89987
650
5
906
991
490
957
782
482
328
394
711
702
440
485
97
542
221
692
39
622
38
643
710
270
313
564
804
337
328
800
820
971
573
350
962
657
878
514
397
444
675
199
920
839
401
962
107
136
104
376
534
988
900
313
48
570
383
708
618
117
816
985
812
31
491
897
476
943
729
461
120
717
501
302
58
111
857
287
999
318
568
401
232
675
705
473
798
626
167
615
367
55
169
777
494
62
758
819
869
215
321
310
341
637
17
948
702
327
258
984
164
412
331
985
256
618
907
505
83
787
378
852
844
514
726
548
630
144
334
593
436
728
991
787
507
103
794
901
424
5
430
973
420
992
659
321
590
534
184
999
474
14
730
131
670
490
501
23
952
823
734
8
141
669
39
253
861
279
287
60
436
953
32
754
490
54
205
459
378
296
112
938
403
18
875
430
37
895
31
560
465
401
468
225
854
469
520
727
618
54
440
339
201
756
874
165
995
36
427
947
838
183
206
77
671
10
293
769
854
687
434
688
750
694
582
710
937
274
84
417
520
366
39
451
874
55
472
601
620
20
139
182
684
603
971
143
258
112
8
625
709
261
540
419
623
168
714
942
7
275
354
472
840
674
217
552
957
896
945
814
657
813
551
685
212
692
769
483
730
177
615
30
89
520
989
373
703
803
975
637
350
665
489
641
415
114
457
451
443
445
561
80
776
510
851
643
995
629
892
48
307
906
251
783
690
152
322
832
914
848
825
698
476
263
390
199
770
669
744
618
590
390
558
875
495
867
78
311
335
726
756
423
244
158
289
626
329
906
127
467
744
702
232
422
544
201
993
610
365
424
370
792
715
36
206
509
860
781
703
886
705
390
857
812
128
639
778
70
670
126
67
239
626
805
364
685
951
852
985
680
896
404
386
471
563
451
134
686
383
584
897
414
97
219
227
515
793
345
447
296
659
347
858
315
416
995
421
178
822
639
107
189
213
789
402
175
518
119
525
518
277
72
874
900
948
882
564
711
256
883
409
236
647
795
958
894
394
766
907
579
169
290
357
601
646
306
192
114
196
84
239
856
647
114
675
741
677
677
623
202
130
958
167
707
178
202
340
290
390
829
698
851
839
779
768
621
785
379
791
185
320
279
906
903
45
835
91
988
92
659
396
694
869
874
977
152
97
951
427
410
943
692
378
327
523
961
464
217
931
449
744
436
629
532
836
964
914
609
794
734
580
113
438
668
34
516
317
290
12
559
481
63
314
218
888
905
319
479
129
330
944
289
742
771
479
259
560
526
660
423
515
359
51
357
512
279
844
975
248
347
168
465
159
721
912
887
194
134
808
138
835
889
766
683
599
267
944
154
513
898
616
647
759
418
806
148
714
900
658
797
877
850
251
844
876
836
44
285
216
508
890
466
541
955
205
472
762
344
904
930
347
73
747
100
279
815
789
627
85
954
740
154
813
102
80
436
507
685
909
392
225
141
914
977
987
266
753
829
616
7
800
459
479
785
521
384
697
927
340
799
398
15
535
94
661
597
387
261
541
408
941
930
737
753
685
6
64
886
441
655
931
794
512
66
203
562
690
718
698
500
678
447
457
290
529
482
352
974
643
840
874
861
644
939
430
135
560
608
547
725
793
613
905
294
161
204
556
314
871
959
591
838
332
898
471
614
147
765
882
533
215
562
675
603
391
740
328
491
364
442
45
202
955
982
994
278
227
389
162
523
893
891
319
49
548
138
156
607
362
813
424
452
260
334
966
948
283
841
513
263
876
987
847
911
149
937
203
228
563
144
877
128
269
811
637
636
999
534
732
156
850
993
668
492
787
526
357
279
231
827
524
446
853
411
666
369
780
579
374
882
297
430
154
699
931
324
164
851
866
175
978
331
705
210
191
595
204
821
435
389
358
207
429
790
528
754
98
401
926
67
802
220
265
234
728
676
360
49
991
474
319
612
623
51
188
110
102
752
831
138
591
717
705
208
135
950
379
932
440
882
220
564
136
628
776
545
289
970
995
971
460
880
406
764
945
965
611
582
349
686
611
504
313
817
189
20
331
375
520
652
850
156
187
426
664
185
493
755
632
927
283
559
227
43
272
290
494
869
287
957
197
513
441
304
715
865
627
726
853
244
342
747
543
808
858
840
35
672
341
59
471
843
442
214
47
184
175
111
505
488
274
965
375
45
853
818
172
859
125
436
981
848
434
207
347
826
56
129
440
949
230
239
543
84
861
914
395
708
397
101
963
147
158
551
914
557
181
460
441
769
524
874
541
857
789
986
686
78
500
569
188
528
151
177
771
439
540
646
441
294
12
937
30
875
119
867
151
292
860
638
429
250
252
559
819
305
860
96
570
540
394
949
47
702
153
767
121
933
997
690
166
917
172
141
827
112
253
764
474
109
242
212
980
847
788
264
404
178
915
294
717
766
936
334
551
190
844
614
82
324
173
11
131
536
276
247
202
672
769
739
68
853
35
15
931
809
553
649
643
165
302
972
500
189
463
414
798
870
310
930
791
424
721
722
105
694
391
749
956
473
361
539
126
638
837
808
22
602
613
269
367
540
469
938
722
481
589
650
146
240
735
542
901
442
114
561
140
109
881
380
722
985
706
740
933
323
678
216
700
62
496
174
479
623
765
626
178
80
72
170
646
439
999
690
769
889
864
911
568
783
520
687
461
727
220
181
620
98
286
883
603
328
270
841
621
912
765
38
440
803
784
200
415
72
526
411
44
940
814
389
978
411
476
24
498
860
863
962
881
121
446
259
29
697
749
807
394
851
291
682
768
340
449
428
783
990
370
664
951
572
718
687
757
676
660
754
850
87
671
246
27
829
389
574
798
930
301
927
296
486
552
168
411
623
291
871
288
5
142
469
155
404
348
191
613
336
225
519
539
100
106
368
431
563
391
757
976
95
992
306
991
188
961
746
99
653
120
796
412
254
415
588
631
83
123
24
971
706
837
516
885
783
69
201
36
351
863
52
857
983
592
123
372
682
697
654
40
30
899
622
315
808
517
463
117
595
434
481
700
922
3
595
704
265
766
347
696
840
165
98
88
276
252
676
280
963
78
213
447
733
735
884
961
910
387
986
862
78
460
506
546
343
792
397
13
333
641
979
673
129
203
479
276
925
721
301
25
97
615
336
137
406
653
337
632
9
641
261
273
402
913
316
556
431
366
289
869
858
562
709
255
203
36
845
624
271
553
731
632
411
668
608
217
776
525
822
726
301
766
407
789
416
928
458
424
904
994
519
451
278
647
297
169
196
648
180
246
782
204
949
870
715
746
140
134
900
654
654
385
986
68
325
594
788
236
981
732
907
386
64
580
474
646
879
376
284
655
24
152
368
997
613
313
738
270
683
928
41
829
535
66
864
246
114
143
590
383
520
378
999
415
862
799
482
351
30
806
641
537
616
397
394
91
351
882
621
549
803
678
83
856
516
238
893
598
427
141
800
766
345
58
154
602
894
798
582
395
530
688
826
541
650
732
108
864
607
635
394
228
502
183
554
974
240
623
329
801
738
231
847
258
635
27
739
581
464
628
142
659
518
412
373
300
766
660
511
6
241
147
63
707
601
339
12
391
562
269
409
691
682
872
423
929
401
775
230
914
228
655
320
18
794
49
700
260
992
974
381
697
958
172
928
272
713
336
520
598
823
66
27
819
42
586
858
881
893
887
691
577
664
402
199
735
505
361
210
664
998
573
899
268
748
213
827
484
907
721
917
882
452
728
129
628
400
107
692
93
560
767
67
816
284
267
989
667
5
320
573
975
464
751
719
844
30
424
416
762
772
794
862
636
778
818
549
278
302
421
67
865
330
399
88
997
92
137
612
914
27
192
992
817
31
802
530
322
894
57
263
935
47
218
656
678
997
500
554
103
659
409
768
870
422
788
745
756
767
377
311
45
469
496
246
893
845
397
930
76
539
280
808
666
452
840
191
296
201
141
650
110
57
947
471
463
510
926
14
23
424
266
831
697
508
62
827
893
465
501
604
288
951
882
402
418
370
714
654
780
430
294
192
132
135
612
893
926
833
100
356
148
165
554
337
130
872
401
872
762
725
215
585
427
642
633
627
12
504
779
191
530
903
536
4
746
426
973
251
393
366
233
370
522
80
37
416
857
720
352
749
992
685
484
260
392
866
862
231
106
752
848
667
594
21
447
413
703
776
475
373
582
320
969
56
729
803
464
975
559
709
233
479
922
999
498
315
798
3
748
117
582
620
963
806
992
876
955
419
785
7
475
25
869
841
269
646
644
900
43
432
976
820
873
910
680
734
493
184
414
305
266
8
621
58
416
374
345
161
154
339
298
642
187
849
371
618
999
67
789
732
933
606
772
587
731
821
118
764
906
617
333
904
919
272
252
626
821
732
406
162
166
264
196
107
146
495
343
281
231
649
641
577
676
336
309
889
291
772
620
504
473
130
604
205
778
464
879
342
159
676
307
789
476
880
631
754
750
782
642
23
939
135
26
92
586
905
505
972
667
624
494
372
320
943
687
637
304
22
573
722
956
653
331
39
858
131
332
59
434
55
198
483
741
154
92
653
932
484
156
459
468
12
397
69
866
429
261
728
528
427
529
26
944
107
831
884
405
335
559
245
341
798
130
920
927
906
268
66
546
216
251
461
966
70
404
738
556
851
519
295
286
43
915
824
884
401
749
347
939
719
387
672
684
204
769
982
133
169
342
990
334
730
455
199
544
957
16
562
178
610
709
898
951
342
838
59
424
611
304
529
786
474
963
248
123
300
893
645
796
353
65
305
421
16
32
35
985
345
541
560
454
567
803
953
934
23
86
381
912
980
398
895
675
428
881
754
757
314
226
631
188
881
730
124
327
46
488
764
71
98
779
241
826
790
20
13
339
72
457
120
131
252
489
944
938
859
769
314
185
972
341
296
148
379
948
982
27
331
731
686
114
27
222
543
793
453
575
833
614
56
214
940
242
653
815
406
722
77
189
485
103
647
64
794
483
629
623
115
974
852
712
387
287
54
159
371
732
489
141
923
756
571
371
916
547
692
37
750
456
79
66
739
183
331
174
831
118
417
939
613
628
956
622
995
960
437
532
498
110
223
435
865
15
67
25
215
380
769
519
954
784
628
832
217
344
796
639
714
584
558
656
461
441
269
750
178
901
539
773
79
875
686
128
446
898
862
299
901
423
840
693
307
81
991
496
708
298
881
568
87
273
557
150
317
845
452
45
312
826
111
220
812
516
162
429
715
234
910
765
44
972
283
890
25
484
378
485
29
377
723
445
69
934
622
497
317
112
494
131
884
619
790
130
410
343
545
266
512
11
22
434
213
492
958
612
81
90
687
567
779
416
950
161
988
9
602
507
640
992
622
902
987
736
395
537
34
673
484
875
625
816
938
449
390
761
835
804
952
325
643
184
386
797
366
818
805
430
507
933
961
29
213
188
88
198
286
497
490
22
397
154
658
134
893
594
798
588
470
855
868
979
507
256
664
478
122
385
754
29
690
809
782
434
867
358
801
819
486
224
641
18
737
951
182
973
107
284
72
42
528
768
859
380
698
888
140
997
214
995
801
363
360
597
227
298
635
113
118
665
678
666
262
792
694
461
983
920
659
341
705
24
392
857
421
289
374
15
393
139
638
675
576
178
267
414
79
255
364
316
608
815
500
262
899
320
747
363
981
275
380
529
290
161
575
627
208
518
176
635
570
828
668
53
719
945
592
433
898
368
487
556
132
327
979
391
831
302
780
748
99
580
33
298
362
783
760
901
413
886
973
748
40
615
417
209
153
413
153
291
846
680
549
935
689
298
973
259
540
208
492
393
420
656
626
548
166
343
654
984
810
81
704
111
206
912
224
458
305
109
852
869
216
814
344
812
917
746
490
517
443
618
729
335
543
836
675
872
608
595
369
716
953
891
341
365
891
11
985
153
698
352
918
536
844
541
384
384
60
943
948
58
595
828
874
299
407
556
125
256
59
416
452
839
199
294
393
185
967
334
624
576
461
988
28
65
788
6
622
78
535
146
549
694
389
792
597
474
915
538
167
406
850
294
918
628
420
184
812
534
557
375
2
706
808
460
71
719
845
268
336
326
507
153
328
930
931
508
894
947
296
802
295
934
606
980
877
762
445
35
791
12
291
673
164
60
918
836
800
686
450
47
598
134
243
404
646
235
345
466
825
965
775
880
829
306
11
461
833
54
918
416
214
522
146
512
615
455
794
898
861
408
809
883
38
816
172
608
316
791
541
124
63
517
910
599
882
24
279
574
22
978
68
340
997
94
36
410
104
59
612
342
558
483
219
962
756
92
438
860
475
506
300
959
726
923
154
36
402
436
730
886
788
583
622
561
972
540
675
248
622
926
386
375
600
846
803
728
444
448
600
730
760
817
247
801
983
956
947
771
56
367
744
825
219
852
445
180
752
183
241
115
693
566
289
671
723
626
819
290
401
523
970
785
535
308
223
473
513
397
433
16
516
976
664
497
549
71
843
698
993
342
566
507
946
434
988
787
375
726
549
768
614
916
156
809
314
781
564
428
598
153
609
386
486
414
166
616
155
46
761
457
888
942
579
14
169
308
197
923
348
984
77
613
845
195
527
629
926
752
594
879
796
708
781
315
670
5
320
818
423
212
783
605
283
861
860
47
308
892
231
180
777
68
580
281
964
199
475
530
394
316
621
175
236
326
531
756
855
807
906
845
884
848
184
251
716
943
276
989
303
17
452
96
137
899
508
593
245
708
907
57
158
287
365
213
151
373
66
3
119
900
787
638
883
502
405
680
531
337
190
108
816
651
482
655
849
554
377
480
723
379
825
805
417
848
895
393
281
385
4
243
151
299
708
700
530
502
740
291
393
274
211
675
298
702
549
715
418
139
914
335
957
862
569
186
387
701
465
904
3
244
205
932
592
156
563
483
983
953
750
906
917
647
86
63
186
693
41
165
771
410
652
472
209
582
255
396
139
337
961
565
265
988
969
241
490
425
881
262
623
28
161
495
362
160
770
545
552
956
974
521
799
470
263
599
677
305
725
285
406
889
343
471
975
568
241
451
62
250
754
363
12
886
75
493
944
712
838
58
164
42
152
538
296
987
167
285
387
646
596
272
179
323
415
678
598
596
30
510
530
268
229
206
751
506
716
851
795
521
575
492
760
873
652
393
292
296
503
251
363
226
54
466
387
420
736
922
870
197
950
397
959
974
76
899
212
728
918
421
843
88
907
684
249
443
674
440
415
95
808
560
254
947
285
163
330
456
860
803
124
286
224
223
959
149
550
559
80
532
173
86
291
22
69
470
536
675
4
974
487
41
700
472
949
946
939
464
231
201
618
758
372
877
883
825
196
660
163
515
863
373
417
230
681
894
950
315
976
618
760
491
656
917
134
897
552
406
933
645
390
141
261
858
939
645
38
126
186
658
258
923
620
922
261
105
947
716
540
452
380
882
208
510
40
716
857
588
673
130
847
615
219
339
899
834
715
198
271
461
68
108
119
544
552
176
845
599
693
894
230
861
677
857
361
308
534
221
95
796
459
190
26
233
309
844
212
580
475
441
587
732
593
253
77
36
537
195
607
349
713
204
651
222
638
730
605
445
764
687
887
390
269
297
258
656
69
536
977
961
914
126
582
504
664
506
286
969
893
937
357
157
243
471
101
192
785
954
954
445
481
632
680
779
433
798
959
995
510
969
58
747
361
794
694
910
627
487
571
550
829
466
346
259
79
774
73
640
188
299
509
837
210
765
401
907
30
797
626
650
176
578
636
948
839
356
737
545
805
249
765
533
301
526
127
17
420
681
288
87
759
789
705
721
626
360
912
300
749
235
48
239
951
575
349
77
914
384
229
849
955
859
640
369
894
125
269
52
668
998
396
408
466
58
13
346
866
931
116
972
50
487
396
208
655
503
548
380
599
292
212
702
883
862
935
833
468
826
145
45
280
992
86
983
61
919
316
892
295
755
546
839
869
447
330
89
713
657
797
766
795
714
653
7
31
938
215
395
325
210
579
742
955
418
369
686
403
939
535
497
592
322
688
956
691
43
642
414
979
387
364
538
207
120
795
342
191
100
998
565
863
965
850
321
800
389
417
345
483
269
616
958
16
505
669
703
918
691
840
615
786
325
974
100
183
232
472
492
445
291
137
470
873
102
761
368
572
177
918
757
720
420
914
593
587
921
111
699
430
851
951
752
678
183
250
700
188
655
386
29
688
80
537
907
776
29
684
797
465
253
730
516
154
259
724
176
69
999
673
93
777
119
43
396
136
531
409
889
97
205
16
906
998
912
181
986
416
816
117
264
71
134
418
507
652
184
365
322
785
638
859
201
609
417
985
617
338
488
313
958
200
174
986
705
870
459
333
268
42
203
727
400
179
796
926
234
824
528
916
916
718
15
355
157
425
241
665
113
220
61
394
655
783
315
456
487
841
176
991
117
63
682
840
809
197
228
384
629
436
458
267
222
878
572
727
462
116
891
977
313
198
395
449
41
23
924
290
125
430
229
701
590
830
148
720
800
184
854
225
65
884
792
263
899
705
630
828
283
860
174
585
235
43
161
877
218
56
265
590
684
555
402
533
703
137
493
104
940
973
773
320
180
720
702
978
698
873
681
611
433
267
922
585
505
985
130
623
564
907
236
187
405
517
383
520
461
627
475
626
474
732
942
236
864
22
160
941
213
695
348
371
354
20
181
218
750
629
15
551
585
930
882
307
633
50
624
920
520
727
684
879
393
259
121
206
410
212
290
42
137
138
175
448
109
128
590
840
419
615
356
894
262
961
617
859
390
152
982
698
95
43
789
838
908
410
458
728
66
862
828
511
572
594
325
789
191
703
336
970
137
705
707
472
230
467
109
774
47
823
374
462
666
809
39
807
733
915
781
140
908
587
895
806
103
757
932
883
347
433
782
329
262
473
895
577
865
255
725
555
256
689
109
272
226
622
600
594
236
966
347
962
548
835
349
980
522
79
441
774
608
629
796
637
991
621
820
641
632
129
906
94
572
310
563
525
87
614
289
288
805
182
13
83
771
712
900
560
220
885
114
771
21
463
840
111
553
498
860
756
110
394
474
40
806
222
860
161
334
35
2
104
59
482
990
776
590
435
110
250
739
901
606
424
722
916
241
578
584
919
640
330
262
568
779
535
534
85
667
931
474
554
680
763
391
978
791
849
829
61
895
588
169
980
284
502
5
623
977
756
203
831
853
411
69
953
127
9
812
48
765
597
735
296
541
928
107
853
367
783
862
399
879
440
769
840
193
812
446
452
935
354
931
366
417
404
837
334
888
947
96
689
713
963
187
517
794
197
59
605
577
870
378
449
595
735
369
334
73
515
477
276
69
738
637
792
348
770
768
460
760
299
63
428
308
391
437
221
98
321
621
190
816
918
700
861
329
405
621
267
523
768
587
606
246
152
594
525
62
893
396
366
584
865
319
429
826
276
787
803
872
186
354
780
530
331
460
420
215
633
607
61
938
62
783
703
318
427
752
259
831
628
918
681
72
912
233
406
236
21
501
605
774
798
884
797
800
486
206
238
458
885
308
978
31
576
791
121
746
674
193
874
699
815
101
9
750
689
70
719
836
478
31
388
464
120
143
306
627
282
603
56
437
527
27
743
890
733
557
138
864
142
408
69
25
3
785
574
167
365
730
172
462
987
823
865
912
965
477
146
132
36
358
979
73
548
433
868
287
522
692
210
710
687
139
154
126
298
914
507
745
146
67
420
946
710
726
375
327
236
931
971
221
613
196
326
606
928
132
746
352
833
431
960
195
778
608
628
411
316
132
301
979
676
939
206
718
509
561
930
999
750
787
896
152
602
172
132
619
961
282
770
334
949
168
508
503
504
568
489
763
26
659
664
639
102
755
840
133
129
337
515
284
635
46
170
595
624
189
731
120
435
501
816
321
850
218
68
44
453
178
841
27
686
336
591
716
653
216
823
629
566
110
894
574
107
853
843
139
795
203
680
357
291
958
858
434
846
845
365
906
302
483
537
711
765
914
309
342
200
629
537
48
910
114
735
884
366
934
991
273
360
535
149
43
150
600
455
584
761
209
943
622
554
261
412
191
974
516
361
441
282
893
726
817
797
908
470
90
772
920
481
511
441
436
574
44
679
878
429
76
529
79
282
374
719
417
917
319
749
435
497
247
846
573
551
482
686
12
39
840
964
90
229
327
636
780
7
101
231
323
514
961
100
794
266
872
647
818
256
553
55
970
885
373
962
315
76
699
577
645
589
321
726
507
737
366
585
531
228
49
75
931
706
697
319
840
174
442
238
165
138
704
873
481
724
745
694
160
186
25
203
13
797
361
765
185
349
791
742
235
811
323
34
625
30
222
49
338
427
47
924
973
471
520
763
446
948
194
366
797
386
269
138
844
235
873
57
999
423
160
460
535
795
864
223
224
131
868
170
849
184
251
7
924
844
504
579
288
991
467
99
304
768
620
990
295
495
143
910
237
495
238
317
195
291
850
396
209
488
595
446
551
963
170
733
335
860
321
570
893
823
300
881
704
891
339
455
410
757
6
420
917
771
882
139
987
307
634
603
964
839
28
218
723
653
217
460
776
475
507
363
709
71
986
426
820
659
88
801
362
967
275
449
202
980
553
24
999
496
615
904
640
724
493
760
619
181
855
334
52
869
893
995
55
112
803
278
742
416
85
175
690
43
506
31
874
228
63
665
621
263
845
250
449
803
754
389
291
624
927
74
708
202
619
792
580
868
256
716
19
748
808
761
668
573
258
765
151
820
332
114
776
733
675
101
614
332
24
909
208
311
225
725
778
762
533
241
965
118
405
413
556
105
41
936
835
232
182
100
808
197
446
477
703
18
717
183
699
726
466
670
932
342
309
848
584
870
471
505
941
447
337
879
75
944
755
372
784
662
685
933
513
264
819
164
175
58
541
977
952
236
380
467
573
651
577
94
437
606
917
421
442
116
894
308
60
352
785
565
410
548
920
428
711
559
469
728
958
236
913
32
868
146
586
960
829
467
745
594
617
830
271
803
954
930
698
585
908
648
813
569
228
660
829
615
575
413
676
78
64
668
994
197
686
292
690
180
437
277
385
509
569
270
773
294
778
717
236
109
769
223
190
909
733
13
452
922
430
220
702
709
364
542
758
296
739
79
343
334
347
829
265
804
551
319
738
384
667
195
988
945
111
888
30
428
797
354
569
673
99
289
8
193
232
601
736
174
765
405
57
103
275
518
926
336
273
20
309
163
793
871
332
811
336
155
223
895
759
710
535
958
125
458
898
601
789
619
234
851
80
534
129
984
839
698
969
199
784
596
134
323
723
861
432
681
648
782
353
141
673
769
339
116
531
803
910
967
72
883
553
515
722
944
197
655
563
428
364
954
948
327
736
746
146
400
589
710
654
831
273
679
170
536
24
948
118
463
52
504
375
388
670
390
208
335
123
546
696
655
108
68
402
808
407
178
988
537
190
960
31
925
805
135
957
932
674
383
279
121
479
687
675
973
522
789
396
97
250
662
66
979
192
688
318
508
179
876
862
921
16
262
560
390
49
556
697
657
248
805
947
129
122
668
24
208
488
418
713
771
22
638
518
206
151
37
273
252
13
392
109
436
54
548
963
252
558
842
72
274
748
66
856
747
924
792
238
644
959
813
469
27
976
577
87
315
255
157
854
34
152
920
712
365
461
584
271
213
255
15
349
392
808
467
368
938
884
872
159
903
300
649
438
14
206
525
673
260
466
438
829
58
869
794
153
19
439
893
893
371
78
603
110
378
924
481
423
888
863
952
862
991
49
139
430
268
163
923
972
100
653
872
892
962
525
378
466
229
676
290
147
592
903
187
430
529
224
946
749
314
795
133
935
874
610
484
267
243
738
156
994
576
272
174
872
705
3
961
963
690
661
713
956
804
932
468
257
981
172
111
599
233
508
838
142
44
200
450
724
950
480
233
723
149
177
7
536
166
257
520
665
291
295
844
545
645
573
605
413
571
603
733
542
953
806
96
455
414
148
194
46
852
776
354
735
767
734
135
610
121
17
774
789
86
79
697
700
527
883
622
186
573
755
719
706
244
21
230
786
57
669
58
104
195
152
969
910
186
682
949
821
465
218
390
173
775
724
101
833
276
472
459
25
960
730
13
965
369
532
595
240
324
214
181
385
688
121
439
269
426
157
938
703
480
89
72
534
778
202
121
199
370
563
54
659
331
777
796
205
874
671
160
129
592
358
203
277
8
114
30
705
161
162
964
362
275
535
659
878
734
643
434
74
353
349
422
184
677
24
796
373
843
26
556
119
285
594
797
992
57
474
360
401
254
112
449
24
598
41
686
811
802
710
429
988
273
694
59
844
615
293
391
443
892
648
738
675
263
563
480
535
808
611
63
9
414
810
998
758
277
864
955
465
498
833
363
115
725
674
693
836
221
822
202
6
167
993
169
969
164
625
171
374
375
358
95
165
998
23
8
555
840
279
23
943
697
871
693
282
382
335
300
202
66
85
542
57
139
825
265
325
619
225
95
897
440
331
244
660
218
85
310
503
745
409
615
902
32
850
229
892
28
523
271
757
899
323
249
414
989
284
430
464
17
967
135
566
312
266
771
907
144
971
541
956
653
662
345
829
422
951
230
453
131
940
773
500
380
735
170
429
312
691
132
841
742
201
627
191
985
536
593
689
141
580
356
400
414
24
952
108
302
619
691
346
147
385
569
768
210
705
592
928
280
97
435
535
391
607
607
153
336
381
452
162
790
851
26
51
161
528
873
166
779
957
149
752
49
57
612
517
309
716
84
541
730
299
772
858
126
919
373
79
792
905
170
758
307
624
10
105
670
448
347
147
915
902
912
623
802
608
956
778
516
677
9
685
796
439
980
594
620
929
614
977
529
144
974
858
814
476
849
216
768
854
370
705
221
946
923
747
989
676
968
471
526
396
646
707
386
58
586
89
477
109
819
713
292
484
780
817
162
159
472
102
334
474
667
169
962
103
338
403
225
786
564
146
599
96
653
567
781
875
963
304
707
746
808
113
954
445
279
171
782
816
139
771
785
958
962
102
929
74
363
811
74
445
227
919
978
422
924
273
450
999
537
848
718
88
746
490
208
725
262
29
207
380
287
57
78
931
283
932
234
766
760
215
72
903
933
676
947
850
85
783
100
727
44
607
837
832
347
302
933
114
854
129
215
23
825
828
687
267
968
76
956
320
940
889
661
241
931
641
333
655
965
848
877
727
436
586
493
201
699
68
876
888
705
292
680
15
820
717
905
828
577
102
898
561
462
90
324
103
702
428
671
586
557
411
274
203
934
820
995
160
440
696
428
594
447
500
549
746
865
901
611
372
249
144
94
940
944
558
803
297
564
331
674
540
933
147
574
974
745
237
224
616
231
973
944
690
121
708
472
323
813
135
485
197
664
484
865
512
506
326
437
573
909
746
55
661
879
120
586
290
67
632
91
477
119
366
386
641
552
160
476
630
180
606
132
799
481
279
689
182
431
303
478
468
218
416
324
960
92
459
586
363
411
706
133
680
661
704
368
520
869
242
977
704
212
677
703
895
62
962
378
381
294
478
376
719
80
302
58
296
265
761
673
846
735
567
517
496
733
155
144
177
245
672
222
665
327
427
405
294
309
957
583
903
419
534
540
984
456
565
783
847
810
436
968
330
42
367
646
952
592
777
975
755
754
394
528
51
19
2
130
841
27
699
997
977
654
766
418
22
294
347
980
405
352
460
198
368
87
181
135
933
813
760
647
939
693
793
568
416
822
137
220
998
362
563
748
242
728
817
764
508
79
179
946
927
185
680
736
731
569
773
453
814
477
27
463
280
370
128
665
859
938
818
913
842
13
537
162
720
567
585
732
140
892
398
749
144
758
636
733
850
56
767
291
57
527
949
753
697
2
40
813
794
877
88
618
891
513
890
851
168
279
752
692
799
173
562
391
557
523
642
121
781
262
767
347
214
810
531
575
834
698
535
69
369
375
46
339
974
872
998
790
173
907
216
619
117
424
461
169
333
396
483
390
674
983
986
558
615
601
660
155
16
231
376
171
594
536
774
530
373
305
630
372
231
911
36
111
648
42
197
525
587
517
983
23
193
429
870
813
784
609
770
718
546
538
81
29
312
733
553
872
758
401
616
753
4
920
983
738
50
444
925
104
686
234
376
103
808
197
68
52
598
403
2
727
87
486
407
489
820
106
991
336
491
407
905
834
512
45
829
729
908
353
224
907
533
292
118
211
730
662
69
770
740
383
754
827
995
524
742
480
75
376
255
919
637
694
403
164
79
415
353
906
957
308
169
709
864
648
135
769
9
129
674
812
303
52
430
751
589
919
16
925
161
12
889
902
788
935
474
30
166
795
622
72
571
883
818
29
735
87
599
787
421
658
218
872
426
515
493
165
112
604
977
321
220
186
843
991
640
621
112
688
572
953
439
499
103
415
617
276
17
806
43
182
904
181
903
759
897
289
245
316
628
692
513
814
63
272
106
147
108
73
706
245
661
671
569
308
852
196
390
829
751
369
875
403
12
111
972
598
527
121
605
696
486
382
939
829
520
434
30
616
96
846
881
842
506
295
262
340
357
663
230
739
743
192
403
596
26
772
311
790
208
460
408
629
637
469
972
486
870
721
322
339
359
150
825
716
549
28
458
718
373
104
204
565
693
669
457
481
442
782
759
151
765
664
492
780
633
70
409
829
505
994
446
764
439
993
440
836
97
548
619
166
23
679
327
97
383
935
735
333
747
391
428
954
548
825
452
828
861
215
998
569
174
295
430
434
29
496
657
917
978
687
641
536
751
119
657
86
358
413
111
654
20
566
578
452
882
555
710
913
682
213
406
887
37
802
567
238
621
69
145
7
10
688
557
834
901
984
574
13
863
527
595
802
916
939
641
708
271
809
577
912
786
133
427
745
327
369
852
282
305
203
786
454
408
483
374
191
771
766
85
70
412
935
750
362
422
23
423
154
990
254
156
668
648
389
455
212
639
554
523
597
315
530
922
528
900
388
940
29
380
526
181
641
513
646
927
419
91
465
122
73
157
396
377
88
560
264
285
684
642
779
905
233
622
955
652
15
864
578
615
798
915
972
677
186
318
646
560
337
26
488
375
538
737
433
617
148
94
401
464
995
233
866
256
492
650
8
824
797
948
714
918
297
373
376
285
885
55
257
781
485
411
895
666
10
674
824
989
952
264
476
850
525
699
550
553
542
703
198
887
907
671
818
332
381
910
671
309
511
192
831
835
378
956
405
287
251
721
815
335
95
276
627
969
779
602
653
109
961
102
736
434
472
291
30
251
793
128
882
982
606
744
663
911
284
144
313
513
772
716
360
888
232
552
89
468
337
277
13
386
806
978
118
688
951
413
493
484
150
40
53
481
986
846
661
988
506
836
391
116
323
695
488
724
970
309
983
4
505
631
722
243
183
961
738
549
512
867
484
897
953
194
209
620
870
684
773
389
886
8
94
613
884
575
634
321
431
316
345
452
630
972
323
377
915
607
41
260
676
923
604
37
951
177
923
725
607
802
770
469
265
466
18
947
121
553
530
365
502
701
796
718
691
87
410
212
758
628
551
738
835
641
70
650
867
270
785
85
474
180
441
275
695
445
858
641
386
310
302
153
122
311
960
672
219
950
408
560
80
712
629
242
920
699
258
842
18
142
380
80
584
761
96
663
819
342
652
353
11
606
503
138
356
32
719
642
680
28
431
612
64
31
622
874
99
362
662
155
450
960
327
936
369
962
384
54
857
839
598
536
564
653
746
399
73
694
321
165
749
932
948
804
45
352
463
555
553
151
280
785
674
995
607
858
698
454
812
283
394
377
83
652
723
568
82
109
754
131
467
149
131
480
139
375
580
744
705
302
257
100
336
548
225
538
288
71
892
777
60
924
589
895
909
766
914
406
422
896
856
337
140
544
247
455
699
301
224
729
423
53
700
325
611
191
420
673
203
64
522
131
286
773
612
558
41
90
247
743
27
508
704
74
763
796
288
271
300
360
939
523
735
263
557
900
918
970
172
921
906
521
619
885
546
155
647
894
505
262
638
37
340
613
828
890
701
242
334
220
475
674
784
148
890
492
92
625
479
925
70
822
695
871
220
16
833
216
104
864
96
326
349
355
587
170
253
785
189
572
84
647
343
316
358
296
703
723
518
429
928
960
366
302
421
802
276
483
263
360
550
498
403
286
585
470
244
200
997
593
650
482
52
828
70
645
151
974
775
792
95
266
236
253
95
310
461
154
558
584
972
149
675
559
189
608
249
143
130
364
66
116
809
454
885
991
651
814
908
515
128
814
674
810
150
611
797
968
361
742
897
933
283
190
667
406
514
246
630
228
816
855
831
450
398
499
810
597
459
692
813
43
412
210
625
847
142
632
935
13
875
288
696
88
632
256
628
224
88
472
645
390
969
950
22
73
317
225
856
83
773
79
98
693
525
342
296
128
660
427
473
762
905
236
879
73
889
744
855
467
411
601
881
189
277
698
700
214
712
794
961
540
874
518
77
553
911
86
954
421
563
962
924
390
334
240
53
623
223
747
558
577
532
758
355
996
690
547
314
593
494
850
505
200
833
498
806
589
103
541
481
612
482
487
924
289
186
558
510
300
887
266
921
78
326
389
444
316
617
164
972
394
940
831
75
69
948
860
886
547
54
2
743
266
330
465
218
107
450
516
22
569
112
631
231
11
27
949
581
240
796
99
423
102
754
927
94
752
266
778
932
708
347
609
940
792
915
986
849
183
379
305
558
28
837
869
197
465
836
542
594
497
461
39
605
728
870
14
402
668
752
13
243
220
424
730
91
225
956
718
609
300
257
962
610
34
666
524
967
144
607
3
376
436
156
284
518
80
95
264
828
155
479
163
346
129
455
280
537
935
353
792
141
33
114
224
594
856
54
130
476
331
484
232
394
584
692
678
686
389
274
390
44
531
186
305
706
689
560
815
607
785
72
436
172
477
129
551
904
824
791
35
300
743
984
268
423
74
886
407
410
71
581
251
570
913
424
460
477
434
349
388
398
509
182
531
511
252
877
10
35
504
839
104
977
852
330
922
69
581
140
799
695
524
252
666
367
976
221
393
908
941
837
378
903
71
403
145
686
804
869
955
863
237
780
372
77
882
586
44
383
540
433
309
660
690
134
107
688
835
178
178
202
831
160
927
59
708
627
771
88
809
390
857
118
983
800
959
671
357
277
620
958
166
857
12
803
825
647
567
861
995
683
704
680
654
386
839
520
289
928
429
716
182
572
306
357
841
314
608
108
492
834
678
860
811
743
235
20
536
999
620
26
207
841
583
908
473
801
169
354
45
529
46
939
643
32
696
11
379
492
417
179
674
87
637
251
523
97
476
52
329
914
96
241
743
68
171
585
169
266
278
861
924
443
112
405
359
498
221
185
490
417
142
873
238
139
493
271
706
693
557
855
559
631
251
916
723
504
808
698
145
696
91
991
383
728
288
354
33
887
2
521
236
781
696
154
89
511
384
13
71
416
11
569
214
689
116
406
749
892
832
338
806
883
303
145
641
389
341
938
191
272
641
980
443
558
242
364
204
903
426
811
60
183
337
711
236
175
422
70
226
812
85
656
604
931
367
311
955
369
737
965
814
211
636
160
126
166
50
137
723
838
471
760
555
579
157
10
386
957
430
442
200
800
246
268
696
60
976
319
892
867
529
627
182
5
45
49
808
988
505
395
955
407
480
916
771
359
34
346
589
615
421
15
143
442
832
294
265
70
487
945
894
342
264
65
812
100
791
684
434
530
281
579
405
103
827
464
663
814
448
382
729
130
530
406
694
288
213
83
517
811
607
396
284
718
407
50
52
767
720
202
736
542
344
248
386
329
227
353
78
917
728
623
545
833
823
446
374
770
449
246
324
293
492
277
89
128
457
522
342
47
181
26
135
19
201
208
461
50
427
205
289
945
367
76
480
378
510
266
631
558
817
821
964
167
480
344
241
475
817
836
551
790
966
300
226
543
425
886
917
698
278
406
676
633
454
880
967
11
44
469
914
238
624
217
712
471
334
972
543
952
393
710
732
850
141
244
787
631
884
335
168
619
323
858
793
156
470
304
489
741
506
635
655
755
679
575
167
978
76
389
435
461
729
316
209
917
379
774
795
914
395
652
913
349
310
993
684
348
824
945
444
388
432
895
33
12
156
429
770
697
584
401
810
693
804
132
286
966
394
422
321
447
186
374
884
246
610
195
6
861
129
521
371
720
561
582
614
445
201
18
434
491
445
947
846
295
553
295
873
604
732
317
491
870
120
109
47
811
325
34
46
525
289
82
979
725
91
747
740
473
982
964
485
221
853
829
35
955
14
607
182
340
947
743
954
136
250
861
878
86
594
964
79
319
944
228
681
573
537
554
677
183
557
300
874
560
418
438
249
996
477
429
140
244
351
47
939
306
271
361
658
507
797
271
888
118
65
862
819
775
531
678
151
226
668
590
936
197
933
94
82
594
312
64
587
796
698
634
909
727
327
65
288
297
390
441
137
986
976
842
265
798
379
420
296
237
583
893
640
283
90
809
60
775
543
616
701
658
886
469
971
92
347
271
955
924
531
846
39
752
776
798
420
359
138
531
612
402
885
259
751
994
69
207
987
610
212
575
686
14
394
84
637
501
275
339
62
328
717
219
234
532
558
661
859
454
216
650
165
183
924
366
367
282
535
502
800
113
558
355
633
535
121
143
205
827
370
284
2
840
212
728
907
912
270
286
145
597
773
669
571
57
991
201
311
681
451
802
648
152
262
615
807
868
727
382
187
739
875
668
581
381
543
685
696
549
858
14
132
519
37
422
345
656
690
426
777
679
704
819
974
771
194
141
275
700
942
557
923
730
638
62
505
505
346
358
153
665
464
231
229
449
232
670
229
289
185
23
360
281
932
629
114
378
421
419
957
421
687
389
316
254
386
105
27
991
604
803
917
9
795
316
556
30
656
318
476
552
727
500
497
385
744
387
753
489
793
651
159
444
121
274
506
738
51
554
360
954
242
207
240
72
580
840
969
141
331
267
446
516
647
477
126
854
12
392
520
757
6
754
937
561
618
678
91
463
906
690
682
18
506
735
151
930
5
519
343
861
412
345
319
564
323
476
719
102
100
561
665
955
54
264
325
670
643
149
21
931
444
134
817
441
293
960
726
595
794
273
321
866
590
899
844
482
400
320
384
433
934
23
385
492
872
550
108
976
877
933
513
183
586
599
355
184
829
656
407
713
772
317
754
737
839
650
557
163
692
462
534
8
989
151
670
936
3
662
66
533
293
491
712
613
22
657
222
694
666
744
587
67
602
900
201
133
528
970
605
588
470
671
935
885
214
558
644
222
719
611
199
51
167
517
243
295
733
813
558
254
63
155
799
52
697
471
689
42
455
959
746
963
936
482
696
427
839
312
588
168
578
712
206
584
451
90
14
229
692
633
898
316
956
715
722
136
228
29
367
811
982
610
326
203
451
41
242
256
569
883
178
348
137
84
850
495
17
433
313
932
643
260
858
863
185
972
588
175
990
271
692
148
891
440
496
246
144
511
762
46
645
393
559
311
784
184
44
267
393
713
633
619
682
186
638
825
294
579
640
3
880
967
748
957
50
741
570
328
253
986
693
301
265
18
24
378
828
851
5
227
309
687
2
219
549
214
728
78
144
866
99
834
882
554
240
702
430
275
405
330
181
7
966
424
730
275
813
88
999
605
578
764
17
118
764
66
393
104
598
453
212
742
326
435
726
985
573
302
196
728
360
973
305
14
759
540
917
329
642
58
448
381
341
637
287
200
451
882
62
153
899
956
244
475
967
241
28
956
596
246
708
215
694
455
46
821
241
83
212
262
375
248
154
396
753
682
553
217
90
541
169
527
229
755
915
384
865
538
549
877
578
422
188
176
537
911
49
575
227
59
790
838
40
195
927
239
746
555
407
78
21
236
754
870
500
982
539
321
595
386
143
138
870
949
965
648
944
705
389
18
175
220
161
747
912
443
219
631
865
374
224
564
559
135
187
672
292
979
123
590
892
882
214
892
91
453
846
142
481
913
100
836
437
68
198
321
873
218
278
543
171
161
398
960
287
617
55
734
138
991
463
699
93
6
216
472
266
587
469
399
190
570
573
491
794
220
414
566
205
424
367
243
462
54
975
877
216
601
648
572
941
66
801
863
177
379
401
783
970
42
305
888
543
826
339
15
773
735
498
932
515
524
603
650
988
861
506
402
756
569
771
371
414
858
248
130
577
536
606
587
765
652
782
32
993
977
896
972
203
112
176
91
700
384
933
462
394
419
567
749
116
692
653
676
967
704
917
12
408
785
775
156
294
820
297
912
138
127
169
955
733
292
599
646
818
55
152
419
252
52
660
469
418
470
574
726
983
74
582
48
588
804
197
456
570
302
999
864
635
831
411
623
193
418
419
769
959
26
53
774
149
339
47
693
187
581
691
300
622
526
272
359
313
351
925
903
743
871
273
814
533
473
269
769
742
770
847
943
6
620
693
2
556
740
294
248
55
732
378
611
395
141
670
654
849
951
779
436
950
962
4
307
908
256
153
431
217
749
288
580
636
924
350
903
994
124
867
465
289
393
988
506
153
619
362
220
379
231
879
649
682
947
875
716
258
82
711
711
529
316
634
291
318
867
648
737
868
93
255
969
621
315
234
967
969
230
467
489
618
435
968
633
800
286
301
94
777
830
66
869
50
503
607
407
623
941
840
933
24
717
468
749
488
125
400
965
814
522
254
203
668
184
571
416
78
357
759
332
196
910
83
333
889
317
426
148
418
327
87
374
140
726
642
17
46
946
129
58
759
225
345
906
418
523
695
200
821
176
545
499
24
832
248
153
950
907
928
436
780
56
204
348
694
613
328
206
640
767
787
794
529
777
771
760
53
210
523
310
834
522
123
855
34
770
558
780
250
712
716
768
188
478
685
613
693
4
765
625
354
793
41
693
713
107
715
452
657
880
881
629
123
416
705
492
234
908
738
829
495
546
924
598
607
377
700
857
157
427
723
329
61
571
564
127
893
669
39
163
344
920
408
613
890
819
402
743
282
52
874
977
826
849
580
555
934
573
343
705
999
969
146
64
358
843
822
944
454
394
96
876
259
45
286
120
654
920
262
409
646
789
472
442
21
203
68
447
647
461
44
198
247
902
720
613
552
990
414
70
916
221
26
917
350
760
383
561
509
774
471
529
105
50
586
415
688
897
664
240
218
695
365
858
569
157
983
795
873
839
563
703
226
516
805
824
240
242
488
902
986
935
482
786
515
749
628
837
489
19
942
483
386
306
71
212
173
212
420
145
865
626
654
110
690
679
548
64
192
203
808
549
822
440
675
228
877
995
515
855
994
773
238
334
211
52
416
141
476
92
29
143
209
375
168
201
330
806
280
405
558
396
266
800
311
650
457
643
680
531
233
976
144
246
241
422
315
524
196
14
276
16
653
105
766
210
120
232
547
704
25
654
827
173
743
148
257
460
449
209
800
315
766
502
699
463
513
690
590
648
804
406
848
540
588
319
154
802
936
659
827
99
601
474
68
482
353
740
911
316
843
971
275
590
593
243
796
956
233
201
274
848
580
798
352
865
555
765
286
579
949
970
101
513
451
29
127
177
307
286
842
416
427
664
892
352
993
89
444
294
746
611
730
406
762
696
41
374
945
245
443
359
786
940
261
451
233
651
151
972
314
775
747
838
519
466
612
607
822
274
99
578
250
82
635
765
907
186
258
981
248
376
193
183
822
441
576
303
22
347
658
664
901
922
134
731
625
530
76
795
358
231
728
596
473
134
188
775
171
985
11
587
918
473
10
165
160
469
41
666
286
855
752
726
559
190
335
965
183
164
189
404
105
917
634
878
911
69
736
465
260
558
238
865
470
814
888
381
225
141
649
944
452
79
171
695
819
859
97
639
363
73
253
479
768
757
718
155
449
962
19
482
412
337
348
786
768
833
110
697
675
781
223
426
295
420
598
352
816
403
55
104
974
106
506
115
42
751
378
280
404
772
439
306
923
556
278
721
952
492
967
974
452
484
853
411
961
637
276
149
609
598
592
625
435
183
212
635
695
376
228
445
740
42
679
197
482
95
44
667
421
157
16
598
715
609
334
442
213
629
326
392
36
855
63
488
856
134
734
689
442
998
659
837
804
420
174
966
682
289
184
9
634
880
621
425
862
668
254
76
232
247
76
382
431
627
602
589
756
320
760
541
451
171
300
318
654
932
759
15
334
623
331
127
933
664
754
181
612
742
40
836
123
314
933
651
403
173
825
709
74
493
983
668
921
727
141
513
415
493
969
883
486
647
782
922
43
655
959
339
692
54
330
496
190
726
639
769
471
361
66
232
492
978
430
664
221
729
579
492
651
891
4
166
16
261
155
525
160
757
907
95
199
878
866
226
512
371
964
68
547
350
183
108
305
975
460
110
902
707
389
924
891
132
350
336
850
904
538
491
886
133
643
287
246
108
725
225
83
888
603
299
547
415
631
834
267
426
601
982
342
390
694
179
643
18
504
428
637
566
25
978
834
276
446
971
809
153
965
464
491
891
356
233
267
856
109
680
596
591
272
568
334
432
418
82
196
651
841
205
775
607
48
839
210
847
119
719
353
717
114
930
969
556
684
891
289
857
767
932
11
336
878
796
227
127
344
260
21
566
191
536
410
808
795
145
104
760
222
611
949
744
945
997
778
884
300
454
378
733
522
987
536
675
791
783
208
802
583
5
40
816
833
28
600
804
823
336
484
617
895
490
477
654
206
845
929
385
989
938
353
672
286
678
617
745
665
785
114
900
656
101
780
437
792
744
375
604
67
214
152
508
87
502
970
309
320
14
604
622
999
693
733
578
722
357
51
54
100
637
10
973
181
704
490
761
209
259
308
887
859
927
366
764
394
274
359
81
856
19
5
440
838
931
723
471
49
562
924
922
959
670
840
818
825
999
258
581
985
455
610
753
457
344
538
32
412
833
312
541
682
507
459
605
803
269
765
347
701
614
205
706
428
434
442
158
127
454
807
256
989
616
2
921
238
484
406
229
674
879
771
521
698
947
580
613
295
125
327
844
765
788
828
140
940
374
762
807
320
64
348
847
7
230
384
290
903
190
114
456
29
465
702
874
487
354
252
543
880
112
507
890
966
429
582
382
480
321
820
426
846
627
731
213
475
657
393
590
310
68
762
250
636
788
117
843
70
907
813
525
230
510
291
334
701
359
738
461
87
947
57
848
705
371
899
281
918
54
191
553
646
459
988
214
696
148
454
11
149
617
777
231
934
683
800
717
785
553
857
341
671
772
775
709
991
135
399
157
836
843
306
193
210
40
418
224
446
762
510
804
6
422
920
650
840
361
912
229
857
420
574
45
704
882
43
666
759
273
301
865
844
464
722
755
9
727
36
125
242
403
64
844
416
473
533
461
769
112
539
337
972
131
122
584
632
477
547
51
405
726
645
338
321
212
648
970
433
858
771
192
595
758
931
541
872
8
530
940
980
638
510
63
979
204
903
904
106
677
45
278
498
836
554
840
64
67
515
555
708
495
644
870
101
323
365
360
621
285
117
641
420
388
792
8
102
34
939
579
178
21
700
96
86
734
163
212
160
492
851
584
268
617
177
47
940
12
722
931
795
99
983
992
811
179
337
575
745
801
996
573
540
409
781
278
719
694
777
778
328
459
214
189
792
493
963
990
685
544
638
801
219
983
687
330
15
718
629
692
725
243
300
116
573
904
903
892
890
845
571
339
195
560
187
940
215
227
536
801
147
263
407
412
319
546
197
785
110
606
127
133
946
693
561
561
514
18
881
20
182
75
397
68
932
286
549
58
733
711
529
133
856
233
95
266
177
896
197
368
66
714
434
814
526
7
807
276
562
489
867
281
934
57
231
469
845
218
23
204
81
729
35
195
718
514
936
472
737
39
99
329
101
578
60
84
570
200
402
571
888
256
278
870
704
859
968
38
365
338
740
117
292
994
48
731
61
345
421
772
34
199
781
231
718
414
970
20
539
426
44
704
617
678
856
476
830
220
746
330
867
147
324
557
76
652
544
369
607
370
824
761
237
903
239
956
612
568
478
366
409
365
659
430
504
162
742
257
484
7
380
278
505
49
529
702
737
974
110
904
64
79
567
92
775
413
499
654
489
911
308
474
623
645
293
90
128
702
688
861
155
391
125
255
693
234
50
334
185
945
149
662
641
987
908
885
814
531
160
31
547
708
602
469
906
969
758
200
683
403
10
128
226
417
412
145
995
376
634
64
391
193
171
568
110
941
216
952
582
835
64
60
471
148
830
901
86
705
697
483
512
918
281
558
816
622
530
88
92
201
564
135
539
769
347
325
698
308
691
127
864
804
704
521
152
563
321
688
304
364
696
850
965
189
958
116
220
556
305
791
670
905
531
39
27
988
960
218
43
778
815
564
684
322
376
599
23
258
279
531
258
489
166
842
58
620
151
299
768
987
520
34
885
807
205
349
96
807
376
972
394
514
963
347
598
305
226
909
846
91
730
153
985
184
31
844
462
519
503
165
620
401
674
392
600
620
757
585
726
369
897
893
927
527
535
189
725
826
951
73
239
159
264
917
723
214
901
582
331
408
50
126
445
832
686
310
73
86
595
915
22
288
17
136
326
229
88
377
714
74
128
407
927
399
244
276
489
881
934
258
578
424
624
775
325
21
22
982
42
219
617
438
39
837
559
796
584
956
203
891
148
310
481
367
519
733
858
732
260
579
142
982
865
263
554
660
496
583
913
189
80
771
310
366
614
56
558
918
435
258
762
630
305
805
950
589
246
65
688
493
785
794
512
268
202
304
663
808
338
48
857
81
925
545
528
363
154
515
148
445
162
845
85
339
899
866
512
23
704
542
427
396
445
690
667
349
700
549
69
379
93
111
835
413
650
277
625
335
997
119
427
829
212
243
984
913
105
495
624
280
134
398
963
34
658
949
668
939
835
801
3
876
558
575
622
863
433
84
84
976
541
291
625
88
261
366
856
488
162
287
570
810
322
437
127
774
605
305
931
409
510
103
244
513
500
954
846
442
259
867
671
527
423
759
851
863
875
818
767
683
766
365
619
85
639
548
390
553
715
483
990
474
256
789
147
210
899
520
805
278
723
112
593
221
535
758
163
17
939
320
349
320
473
528
55
180
596
495
330
48
921
972
459
498
978
922
266
735
847
586
252
680
739
845
401
816
115
661
92
646
12
362
856
324
661
118
971
427
392
850
575
550
659
733
928
414
523
30
650
978
607
512
272
79
469
486
297
938
996
881
252
990
449
314
219
308
864
343
769
573
797
738
702
743
875
368
405
110
947
319
484
993
188
128
246
799
518
567
230
900
654
276
950
7
971
527
187
339
698
314
531
211
13
614
208
491
209
836
838
318
18
730
261
910
151
994
850
259
276
633
409
282
832
620
560
406
397
556
320
26
223
530
450
328
555
710
449
357
297
119
153
79
208
206
676
409
513
79
702
913
338
690
220
289
429
584
858
654
82
984
880
564
63
409
999
879
546
89
757
92
952
486
318
605
570
607
67
293
663
391
173
437
665
510
829
670
737
149
678
330
490
112
977
314
693
941
563
185
625
11
495
392
412
65
595
265
588
246
893
882
452
964
284
902
515
134
64
662
799
985
647
339
252
217
56
457
587
767
171
530
586
994
167
538
785
705
834
473
227
118
197
559
287
772
10
496
266
555
839
261
327
716
463
18
739
350
383
585
812
18
420
784
559
38
149
305
270
338
936
605
944
582
53
727
750
168
764
706
231
264
756
551
722
354
856
566
332
102
653
3
937
672
477
891
556
420
144
722
53
665
852
931
398
143
555
869
601
694
974
197
122
832
126
74
472
970
80
110
740
610
759
146
571
903
110
498
283
921
881
479
155
325
930
327
967
644
726
996
964
364
771
660
315
480
869
946
307
919
896
327
305
894
840
257
284
273
233
390
283
197
856
133
241
29
70
676
430
907
131
101
120
716
463
688
475
50
138
860
654
389
10
560
197
487
75
390
262
47
26
791
990
470
612
556
971
555
760
499
295
805
620
160
337
246
366
593
980
835
951
370
2
4
65
461
634
20
629
646
329
504
908
760
185
54
329
51
627
354
779
472
739
387
174
715
223
850
266
436
64
883
148
824
334
551
97
471
424
177
200
139
357
676
714
945
759
879
687
930
427
963
951
420
719
195
194
659
462
11
199
495
40
647
559
414
265
198
160
457
202
447
729
864
359
631
657
860
231
691
288
298
485
528
974
166
995
811
245
549
484
112
764
894
736
385
523
700
978
156
852
99
76
683
418
834
760
340
894
858
70
127
703
147
231
411
763
207
767
541
73
735
598
981
812
548
597
859
899
420
677
297
775
297
35
530
182
823
797
592
495
501
212
247
367
589
500
757
713
938
831
834
147
195
899
284
727
140
267
786
970
79
250
862
879
454
634
94
561
733
118
492
224
480
491
605
46
774
836
934
93
594
797
564
73
588
284
115
17
769
989
195
521
847
984
871
67
386
9
332
675
390
113
556
656
215
981
412
576
650
698
843
992
346
180
399
182
29
91
903
421
32
999
279
163
59
518
867
70
798
48
809
4
671
105
232
551
698
473
470
11
268
269
176
570
417
496
828
548
791
51
480
49
59
176
180
964
700
950
115
127
837
96
227
897
820
145
228
229
438
820
525
989
839
680
507
331
169
490
691
185
252
709
469
125
792
736
235
905
464
910
769
348
966
651
333
291
972
882
982
239
793
924
946
732
210
172
335
696
513
288
233
650
151
429
37
536
696
598
684
380
890
403
479
336
728
811
81
288
299
336
399
186
783
138
236
108
359
365
846
992
81
556
805
877
395
185
353
140
867
138
973
434
142
550
577
575
218
270
32
521
706
346
723
948
846
692
689
898
19
415
624
444
527
908
418
724
390
675
146
89
105
599
417
549
263
228
468
175
528
313
267
120
377
215
147
125
80
410
863
368
935
370
889
722
997
571
195
978
835
253
351
255
195
369
357
10
14
525
251
272
436
602
833
193
655
272
803
71
678
919
393
481
206
400
536
437
167
971
661
683
303
477
634
196
155
281
814
350
35
974
951
861
514
290
605
575
228
227
543
353
756
99
598
437
49
413
656
480
43
338
572
651
346
669
707
350
988
565
656
577
359
102
207
856
587
683
273
782
523
101
117
694
267
503
361
192
239
372
602
684
593
777
136
172
549
317
759
23
963
865
281
398
216
862
54
805
806
734
237
628
115
357
208
208
110
387
669
726
377
503
835
306
79
939
999
321
203
594
770
434
215
4
119
882
38
848
599
991
126
857
838
993
473
139
853
832
850
580
952
603
488
61
596
962
981
57
644
752
468
691
78
973
253
559
874
704
6
393
702
909
808
427
195
998
593
445
605
817
473
976
605
330
495
646
792
492
465
79
287
245
130
931
507
314
478
795
928
333
463
882
227
166
236
626
326
956
293
374
494
534
659
205
629
919
970
817
554
508
824
893
346
395
526
989
128
644
897
265
548
110
975
284
723
701
26
703
770
325
889
10
40
841
816
808
698
934
402
33
491
665
670
497
377
904
741
700
687
41
987
348
579
431
541
668
373
606
227
820
319
799
458
648
969
551
204
120
22
968
57
887
711
490
569
262
866
794
907
677
619
772
264
528
351
629
462
336
65
769
11
29
22
217
61
38
887
878
103
484
127
914
135
328
948
43
686
874
486
730
835
388
656
607
374
607
896
248
52
80
350
994
686
171
179
555
564
971
353
239
895
975
9
818
53
903
502
742
635
259
582
519
340
804
555
91
213
52
840
765
350
319
404
294
669
983
547
77
311
894
537
661
888
246
148
318
947
153
322
468
943
680
859
848
999
260
500
931
869
231
88
473
957
668
360
371
239
190
876
455
286
390
100
75
951
2
862
219
518
923
490
742
933
512
958
750
213
944
895
214
629
754
549
136
54
381
758
707
38
217
875
385
737
793
220
884
572
955
813
822
675
494
694
963
235
809
534
948
371
557
342
897
121
354
284
352
846
373
644
595
995
395
807
644
290
755
342
403
533
299
630
328
980
483
611
474
436
997
567
375
510
961
764
63
510
510
103
349
747
276
136
860
539
412
470
719
43
199
754
991
438
847
648
481
989
744
197
898
877
637
949
80
786
289
955
170
814
26
612
784
756
27
60
266
69
911
263
409
515
576
163
187
682
834
953
758
633
771
282
544
695
148
448
419
785
994
320
522
139
149
258
366
680
597
332
606
441
138
153
684
452
582
540
107
924
520
221
820
826
308
719
977
749
843
361
17
804
123
898
822
924
304
364
85
102
308
791
28
514
487
121
241
488
543
788
920
279
385
586
184
153
115
489
104
653
926
628
167
466
158
293
943
61
974
90
439
632
387
706
152
455
217
39
897
845
670
523
939
410
515
364
437
643
574
570
862
3
243
701
690
470
202
824
977
227
953
931
934
540
632
820
685
109
597
230
389
562
964
107
714
46
141
272
364
276
705
218
358
989
314
540
356
119
312
419
15
171
199
713
788
71
393
982
124
543
46
520
343
17
208
502
84
627
83
381
262
990
655
651
316
956
156
875
18
284
242
386
916
447
481
873
627
587
848
578
789
538
623
982
730
461
784
202
372
443
113
463
848
23
944
370
15
806
525
623
55
631
339
862
237
349
192
373
462
339
643
537
90
278
339
575
372
8
694
291
796
53
113
12
464
116
749
276
366
788
683
956
92
122
531
322
937
985
623
404
192
747
977
436
869
336
612
464
842
563
749
188
871
956
580
418
793
968
654
892
431
885
911
702
17
81
857
537
716
6
622
618
79
924
461
627
595
941
112
209
752
931
436
936
788
199
779
722
876
882
567
916
145
389
304
54
826
715
426
607
538
336
281
67
887
93
638
376
572
415
779
800
229
272
35
604
754
500
446
690
794
845
332
964
600
960
184
220
58
117
485
11
905
537
729
434
840
112
809
7
737
465
534
305
569
812
3
147
318
503
320
451
19
427
960
630
180
212
290
563
743
202
116
402
604
58
662
433
750
815
901
242
594
682
198
492
500
667
264
896
430
103
101
522
97
969
890
482
282
896
298
129
836
117
875
88
724
783
918
699
738
483
63
304
867
944
552
324
831
173
892
163
88
199
370
667
953
94
316
62
578
670
309
295
71
635
353
919
476
634
990
719
162
439
625
38
476
912
43
757
847
673
803
481
542
83
769
283
48
979
947
408
394
459
206
131
916
600
376
357
956
210
19
731
860
52
263
231
915
498
657
244
813
523
506
939
693
690
600
4
413
453
563
276
673
167
896
582
388
862
767
357
772
995
723
561
118
850
799
45
449
942
674
743
891
648
345
884
755
111
206
911
530
526
385
535
943
916
792
17
914
695
761
425
992
933
447
117
115
255
63
959
778
520
737
501
834
643
123
567
538
645
439
632
689
978
98
282
27
367
168
193
617
723
527
612
501
284
362
882
955
683
605
451
166
819
461
453
27
383
324
462
426
913
237
250
347
71
826
728
772
598
958
495
161
92
339
725
774
956
692
743
574
18
118
388
631
249
987
568
418
326
977
884
933
905
875
107
37
240
522
621
10
583
477
115
555
217
481
340
17
186
94
125
241
304
743
352
612
112
219
170
838
436
95
524
211
206
212
660
584
835
390
431
600
41
7
626
302
484
810
122
925
723
779
806
634
785
558
165
991
967
883
525
12
513
819
791
550
874
605
643
909
514
467
436
675
243
801
550
364
878
720
348
773
257
685
379
782
806
712
479
811
774
371
179
580
140
113
159
655
931
430
621
720
426
161
246
571
961
327
944
637
523
420
20
669
265
88
345
985
450
336
380
917
995
416
404
112
750
9
553
854
393
249
563
601
351
47
513
50
885
576
770
528
783
949
234
96
31
839
856
807
485
563
786
350
267
471
262
543
686
191
94
493
67
401
344
233
934
263
351
548
900
893
786
759
235
171
699
66
128
508
499
159
939
600
490
915
909
522
979
923
238
128
911
523
86
487
566
940
858
613
59
223
446
682
610
227
856
188
452
464
742
595
66
748
86
595
192
806
251
130
756
604
221
836
338
298
51
293
687
192
777
241
970
224
537
690
221
852
29
310
99
36
991
734
403
573
238
149
660
115
737
518
689
567
300
932
581
446
62
339
146
783
361
929
416
759
483
203
420
666
165
905
60
896
800
778
125
79
881
332
999
184
895
125
104
413
37
740
460
392
462
828
429
520
696
693
411
527
621
728
720
151
453
821
594
187
858
624
895
461
709
814
809
69
837
523
605
590
490
459
922
334
158
73
255
281
216
315
964
354
931
829
860
196
669
785
35
471
877
961
356
257
772
194
121
121
314
412
660
513
777
782
793
82
708
55
380
210
587
970
91
116
165
581
922
703
555
158
547
483
347
331
780
52
755
758
321
977
837
792
390
552
613
604
791
431
923
125
36
46
338
122
35
858
813
277
423
413
233
14
182
683
923
768
821
880
235
615
243
715
918
234
830
498
641
55
139
445
646
148
448
772
175
530
634
618
228
231
281
108
311
131
211
529
198
960
759
605
617
448
398
448
27
457
19
940
430
908
227
964
136
552
698
370
101
190
744
148
512
631
551
885
811
421
430
438
566
594
468
388
536
985
959
336
121
230
8
683
111
2
35
896
666
576
809
479
436
861
893
167
611
642
343
373
664
578
341
957
387
887
175
899
467
41
316
418
559
625
392
536
716
48
226
106
913
349
911
176
330
885
493
155
736
894
941
751
375
729
498
250
559
847
813
439
450
760
529
919
119
665
771
725
931
142
732
848
927
519
957
813
581
741
46
84
702
69
254
315
741
6
136
729
126
532
978
514
982
955
709
364
21
372
129
831
162
272
995
146
60
615
887
814
740
172
750
371
97
98
649
51
273
641
243
193
387
431
445
48
270
158
20
137
358
789
125
981
43
889
390
758
250
458
8
327
688
583
553
338
461
400
434
465
37
137
225
800
44
870
989
152
627
807
88
95
322
883
104
322
720
867
711
833
853
823
134
127
255
891
235
936
120
461
706
227
138
365
305
86
669
350
464
852
470
501
562
840
15
120
291
570
257
436
367
422
825
163
770
445
10
765
423
52
379
326
114
827
265
661
498
130
462
910
340
796
694
234
648
846
78
663
604
856
337
501
244
933
24
953
546
626
168
296
785
467
737
525
397
22
306
782
2
917
891
812
57
924
225
986
283
713
472
478
572
774
428
85
267
767
69
141
324
956
887
893
334
467
600
390
910
833
402
384
160
554
540
172
999
492
273
796
662
885
988
30
288
474
497
714
717
913
883
754
972
643
400
442
897
580
470
896
380
642
929
118
418
372
324
122
316
106
877
198
784
667
847
533
46
573
402
513
995
860
838
404
126
286
817
23
193
576
315
878
373
714
742
511
588
653
966
629
879
952
996
574
518
47
150
92
902
237
576
576
213
277
594
644
57
402
261
968
200
259
734
44
475
292
409
320
614
966
44
670
931
670
278
7
778
364
12
131
383
546
448
251
766
594
876
420
712
454
482
975
69
178
713
194
314
170
629
74
752
186
417
176
561
33
543
24
709
292
583
468
995
4
610
253
290
954
542
521
319
681
333
26
877
501
336
682
803
861
82
994
229
694
111
886
767
653
817
966
77
135
684
745
616
446
202
774
74
59
11
299
625
501
615
907
971
971
626
231
998
997
453
96
656
417
778
555
68
634
542
201
576
439
900
946
881
834
192
598
495
294
722
323
46
780
789
732
384
333
498
622
608
129
966
205
473
188
518
833
429
504
759
239
985
337
828
61
358
40
44
200
825
640
302
816
359
250
279
673
728
745
639
560
208
640
76
632
200
411
857
162
994
429
799
319
941
619
871
723
763
323
385
924
480
790
397
493
311
727
10
800
830
511
921
691
702
302
898
705
425
713
818
958
402
158
475
991
163
439
765
175
36
722
442
590
524
73
501
661
528
929
26
891
761
595
646
494
515
764
241
79
894
264
301
507
351
424
234
59
385
26
438
997
488
941
452
733
682
364
674
217
29
795
760
918
321
69
891
167
565
173
146
90
803
305
791
226
804
86
782
150
438
559
274
980
179
402
176
757
459
828
728
633
581
847
33
687
920
141
658
998
721
689
854
905
249
939
297
976
172
950
426
305
760
101
984
42
25
823
324
765
623
105
64
53
580
176
803
227
952
397
307
12
447
180
542
997
700
276
238
548
175
103
517
483
793
394
93
700
821
38
501
264
71
335
917
952
672
341
75
332
474
491
147
30
306
986
32
801
340
401
366
47
426
140
234
137
29
141
361
757
201
439
666
363
757
705
705
966
130
742
317
870
504
51
704
421
698
315
666
466
535
404
641
392
259
772
268
654
543
245
497
828
769
38
2
280
991
170
799
552
472
574
251
250
954
406
956
687
102
455
759
423
868
600
299
411
230
299
922
722
166
140
675
565
755
497
241
840
261
368
19
946
997
883
245
212
399
301
414
237
571
960
425
448
425
622
654
452
539
530
523
221
600
452
845
601
591
545
590
502
930
471
279
324
684
172
426
707
717
126
584
164
810
263
899
455
601
894
91
822
895
528
512
428
723
548
712
463
579
50
551
685
358
530
636
827
875
257
924
991
735
236
637
669
13
990
852
600
214
25
182
375
98
779
98
376
563
526
180
32
968
603
78
639
444
792
319
755
413
17
943
329
642
329
575
348
930
781
129
960
746
126
410
238
949
813
900
978
97
556
198
993
677
173
689
762
283
724
601
902
172
728
344
406
69
525
404
890
423
812
259
773
645
692
455
650
62
825
918
124
609
947
11
815
108
77
896
788
491
770
949
82
235
155
625
156
775
253
426
601
27
127
633
679
918
380
941
657
809
514
721
752
151
235
742
769
919
35
285
634
329
916
181
123
566
173
300
615
773
265
255
116
625
762
640
365
919
248
189
145
922
156
699
673
537
502
61
137
203
357
170
780
551
583
370
997
921
430
509
223
992
776
764
398
826
693
873
127
126
747
814
808
989
835
814
318
569
208
9
565
55
722
982
377
27
937
575
371
852
333
950
457
844
480
710
75
104
194
477
82
450
272
956
742
767
11
780
296
808
205
604
541
89
57
686
953
229
29
548
334
590
179
437
117
982
490
902
519
376
349
548
83
410
267
882
145
764
704
102
634
735
162
967
477
470
959
236
222
352
43
159
74
255
495
934
919
547
842
993
609
268
357
210
683
330
886
413
771
10
740
14
199
985
711
560
393
845
863
698
349
998
899
74
54
249
757
997
111
60
583
519
385
623
729
994
248
891
196
752
894
450
278
663
640
487
356
851
681
292
700
434
693
492
3
859
573
835
849
992
451
19
628
492
892
411
702
725
187
854
109
898
725
432
437
705
951
699
890
471
592
772
489
646
77
711
671
180
958
848
770
14
714
375
388
376
77
178
43
177
962
169
586
991
787
829
246
684
809
314
435
526
845
190
294
803
138
60
307
142
329
424
626
659
924
991
513
590
961
111
993
219
307
348
182
476
309
604
320
261
548
475
699
566
93
188
496
667
331
125
479
288
871
301
701
719
861
536
34
624
9
439
432
441
92
298
709
327
197
330
169
401
961
689
280
440
556
958
99
883
402
250
731
375
594
152
819
761
793
876
214
391
729
99
854
217
135
936
941
499
260
930
328
80
591
491
677
896
789
248
226
814
882
687
766
549
688
486
155
870
560
773
386
814
745
799
470
174
989
115
812
834
343
863
144
547
874
670
879
862
723
376
337
688
819
195
785
624
246
123
739
301
508
886
905
685
294
57
978
113
363
899
764
412
704
600
950
212
245
531
178
471
39
228
815
538
687
196
481
197
893
554
550
263
204
532
796
722
716
85
790
217
123
196
105
589
570
529
708
948
570
978
431
206
944
363
683
527
604
284
935
247
106
312
138
891
814
180
88
295
734
985
311
94
398
651
380
868
788
836
663
294
928
568
744
603
413
964
806
271
941
694
595
423
945
672
625
976
342
355
716
843
254
626
304
686
375
729
338
76
142
289
438
985
250
164
128
754
998
164
806
877
514
921
98
27
73
849
77
523
114
857
861
312
724
916
883
932
488
714
456
820
548
483
773
851
989
517
581
671
858
811
938
719
736
620
153
446
541
732
860
182
995
600
670
716
844
526
649
355
490
231
509
886
357
366
223
642
451
542
303
500
62
627
528
880
537
556
668
171
959
775
614
682
956
913
197
789
277
326
102
977
506
24
914
605
801
261
41
28
236
885
390
96
152
768
344
311
932
154
747
92
719
225
512
540
763
238
168
67
359
266
725
236
339
776
979
375
203
217
230
344
389
105
934
604
281
747
328
869
462
118
274
176
267
398
827
732
905
897
92
262
286
941
600
685
745
521
970
891
624
61
599
279
816
988
158
210
128
402
575
882
319
173
327
98
918
450
300
467
363
702
201
852
453
149
776
451
260
376
171
612
697
808
93
286
922
248
948
858
359
953
246
802
91
543
355
3
495
279
949
77
204
443
614
558
534
189
567
806
526
64
390
49
938
920
671
484
88
695
215
912
173
346
980
226
525
702
528
549
404
463
11
777
5
853
391
54
154
256
587
784
798
828
973
271
740
359
748
287
964
401
447
79
583
522
217
457
297
795
528
620
855
772
744
438
245
296
353
292
999
461
158
939
897
98
308
584
834
368
576
946
47
760
103
576
970
660
81
533
566
652
631
347
899
699
820
734
170
293
801
163
224
668
570
267
68
89
515
633
17
173
388
700
234
446
2
855
435
122
622
260
161
907
795
711
867
854
832
688
230
957
354
859
113
473
290
753
413
311
411
111
263
219
498
583
499
263
669
71
182
88
443
610
772
644
389
504
56
263
570
832
998
705
236
363
92
226
246
469
67
391
379
938
719
170
219
340
254
901
474
592
114
860
782
767
983
566
576
106
767
393
117
903
920
434
293
948
444
439
835
325
757
625
787
554
913
697
4
341
501
863
734
265
790
778
951
250
901
21
679
557
441
886
52
476
685
585
273
673
99
763
543
228
864
749
391
622
830
504
928
557
573
207
868
469
535
775
720
302
482
390
719
306
843
842
630
27
420
15
181
756
627
912
345
81
771
226
518
17
830
78
843
305
59
186
869
25
794
912
619
251
6
544
864
344
91
570
769
140
876
226
408
368
343
525
866
807
393
149
558
160
273
323
627
372
112
606
545
516
6
852
596
725
28
866
946
45
584
791
231
539
493
932
689
929
939
705
819
480
321
545
747
647
682
941
202
536
545
139
249
867
705
836
850
704
769
841
50
555
638
155
248
968
409
800
234
374
916
36
817
785
651
965
855
559
815
108
565
883
775
378
196
594
274
961
515
954
377
763
628
278
625
448
216
317
976
799
58
320
540
407
441
357
218
471
330
594
83
266
254
88
221
715
329
977
759
238
127
799
613
247
390
701
51
245
181
857
175
701
229
332
407
878
440
828
970
781
962
858
718
944
553
973
724
721
372
840
136
83
80
241
308
74
79
906
865
25
915
682
311
900
938
266
417
419
923
733
88
734
68
500
236
997
739
732
548
183
110
73
989
747
80
218
886
253
309
897
9
355
558
6
395
808
848
287
249
941
699
407
873
363
725
730
341
876
80
754
718
936
287
445
670
232
489
203
893
746
575
873
873
13
231
484
337
605
16
677
462
35
486
299
176
242
673
231
872
481
132
234
863
988
669
458
997
650
868
741
261
970
546
429
515
510
768
608
529
751
435
393
538
953
218
32
81
249
866
817
371
36
675
957
641
912
539
172
279
74
76
714
857
331
513
809
856
797
266
732
167
535
581
315
346
739
390
360
20
373
906
528
511
516
156
221
226
836
247
854
100
577
490
263
799
960
549
901
340
996
103
40
739
552
513
705
508
644
418
229
887
496
136
751
947
227
38
21
415
295
646
419
130
416
32
718
903
841
53
370
571
790
682
55
168
738
704
179
276
898
827
229
848
449
932
193
532
240
468
369
389
183
185
617
13
378
987
636
456
960
63
769
391
867
84
813
823
783
998
861
557
705
790
884
738
239
637
217
112
468
469
303
759
669
727
763
140
972
304
331
190
588
196
313
515
736
733
929
584
367
468
551
515
784
603
614
572
960
36
197
364
182
386
70
287
367
298
9
399
986
963
913
270
298
620
732
888
108
712
630
385
783
144
489
310
922
403
989
597
317
645
504
889
231
324
535
557
165
781
746
159
876
833
809
986
944
55
937
481
366
53
282
293
715
645
934
909
992
7
381
759
778
647
4
348
582
703
642
571
705
63
926
195
199
861
630
842
902
295
192
122
234
841
726
693
760
510
937
75
493
499
532
742
602
364
997
942
895
549
584
229
884
639
530
127
962
210
50
592
318
817
45
623
993
881
788
89
587
710
44
657
744
696
691
598
938
194
742
234
725
280
740
626
3
536
111
377
524
204
979
353
85
535
886
528
815
596
940
217
680
619
9
379
691
39
695
308
405
845
313
39
604
13
95
843
10
597
970
725
39
676
214
944
438
992
478
243
722
313
67
606
189
914
489
781
195
260
727
626
660
114
893
553
902
196
806
248
114
361
337
891
393
496
296
263
731
772
845
215
118
842
395
175
466
415
375
248
229
49
286
21
973
953
335
529
353
963
966
974
645
586
308
453
284
720
567
537
541
701
629
209
833
37
388
336
326
124
593
508
330
954
562
18
337
402
466
854
421
874
778
748
884
172
30
311
341
898
298
195
946
564
182
519
988
364
782
622
311
747
612
515
706
975
796
169
659
255
612
503
433
924
126
435
463
106
345
716
890
116
532
810
350
741
674
626
795
956
513
713
789
18
29
174
691
326
624
294
524
248
68
957
132
663
796
144
498
99
196
741
187
19
267
2
896
656
551
644
992
247
826
772
974
457
961
688
314
286
367
113
648
572
719
682
463
284
853
51
818
745
954
460
854
205
985
909
17
248
561
490
104
976
370
814
739
787
54
404
156
522
615
643
524
445
580
589
204
231
810
366
583
925
598
42
444
783
943
83
977
101
914
907
796
294
232
239
790
822
690
740
367
271
691
178
355
556
827
809
707
804
518
804
789
903
280
407
450
942
144
336
378
800
118
297
667
444
821
791
152
487
628
393
625
16
682
181
138
737
586
707
74
436
757
343
157
854
790
271
669
212
506
32
980
919
560
238
319
476
638
109
471
643
380
369
85
23
891
122
80
579
57
304
92
834
138
381
688
99
963
793
867
516
330
237
331
98
848
74
860
862
950
679
790
495
756
36
509
238
423
947
653
654
358
489
342
608
165
908
504
771
852
875
910
775
664
126
292
811
865
874
762
323
678
413
761
216
318
663
746
570
931
645
705
862
907
188
550
713
565
416
507
549
473
280
371
816
211
327
599
808
654
548
942
722
333
189
193
657
879
19
209
744
131
568
67
812
913
322
369
251
758
557
996
241
183
451
242
183
107
230
486
957
983
239
478
359
430
747
666
684
627
458
674
816
579
502
401
660
335
272
251
787
215
834
199
401
219
231
264
417
223
610
464
840
28
540
456
449
142
53
883
846
7
582
722
490
852
894
749
89
141
804
649
268
47
221
924
256
77
788
619
34
238
396
84
577
364
825
330
416
193
152
3
644
872
397
422
238
613
432
839
791
302
262
100
320
434
472
647
290
228
823
894
671
469
432
321
70
493
187
470
568
342
619
584
799
907
60
759
339
774
368
70
851
62
604
813
114
76
95
781
722
148
230
165
662
548
153
844
698
658
394
139
193
656
92
479
282
738
663
661
862
723
546
836
218
156
663
85
792
673
849
928
813
122
729
457
924
895
160
812
964
67
239
431
647
187
756
359
706
745
102
272
354
542
96
938
626
805
605
19
337
70
347
180
829
984
283
977
663
349
103
15
210
275
197
860
444
464
714
840
64
196
637
510
939
475
76
372
553
353
522
596
814
245
940
227
60
2
368
729
833
903
722
440
405
282
276
962
848
251
986
928
613
474
501
264
791
714
800
264
995
684
369
883
509
418
641
985
208
576
832
488
60
922
454
779
615
900
219
292
767
202
667
603
624
137
144
327
418
526
836
795
870
265
20
526
741
801
100
564
421
497
990
259
445
629
934
372
819
33
806
86
643
250
906
383
225
646
895
644
929
789
262
654
168
512
793
57
969
186
383
904
525
553
877
863
197
308
603
188
192
609
341
420
181
144
140
232
918
428
67
533
708
189
94
543
867
728
781
233
585
553
790
946
472
264
649
621
257
463
706
264
126
143
105
380
892
806
833
823
815
825
452
44
729
914
315
380
260
907
282
511
651
59
908
919
218
321
817
994
293
983
684
903
388
982
749
504
746
718
643
919
264
976
85
89
149
112
960
248
194
357
10
810
604
80
12
828
29
963
749
392
312
711
71
449
744
105
860
452
806
660
820
348
55
656
565
520
32
271
308
260
224
642
156
513
783
715
155
961
30
8
361
199
187
642
186
477
758
497
373
192
414
881
95
880
993
674
146
37
561
142
29
441
443
587
715
416
638
117
621
963
400
67
434
732
662
576
252
222
626
535
91
599
199
577
76
277
218
68
839
496
425
682
661
276
384
228
142
258
959
146
874
588
863
752
115
53
903
741
21
49
242
769
688
526
587
984
463
929
538
259
999
657
553
706
266
68
722
86
216
765
608
973
525
31
461
877
127
337
55
959
592
831
723
507
55
929
281
658
975
689
649
92
671
393
413
364
804
261
929
641
105
886
644
480
26
963
293
103
375
333
999
797
445
532
696
133
835
791
712
613
304
484
243
415
44
80
147
782
917
247
918
754
415
406
762
110
533
71
218
548
940
317
185
317
516
895
524
256
401
137
616
599
385
147
861
449
743
67
323
389
316
591
841
734
428
955
812
258
493
959
639
65
149
141
910
322
424
997
812
524
877
367
127
446
320
503
340
90
98
680
458
719
258
925
826
575
839
367
385
609
340
209
393
212
47
734
643
978
368
45
588
242
407
967
311
51
90
25
214
67
990
237
10
889
361
47
232
415
932
401
715
988
995
566
438
519
329
298
859
543
394
424
902
137
423
157
145
354
630
970
31
238
260
817
648
478
824
23
216
494
104
163
5
94
166
794
958
631
771
364
627
397
442
24
977
466
835
408
941
862
339
304
766
864
807
269
399
23
975
24
812
918
624
476
503
288
948
407
783
126
931
941
932
709
448
188
670
679
903
211
456
108
882
932
715
818
18
6
544
773
416
33
962
610
927
758
899
6
266
156
23
694
708
492
894
911
979
663
885
435
605
557
951
438
249
960
530
640
370
390
986
642
89
765
592
13
490
609
948
757
749
591
251
209
503
941
254
331
451
558
383
329
414
397
214
710
226
220
543
843
597
721
717
619
146
706
594
190
695
884
694
605
393
68
774
116
680
791
338
955
348
602
912
902
302
510
879
776
663
386
452
101
393
926
696
623
310
724
838
365
839
417
985
265
907
748
475
994
339
930
806
657
924
259
588
745
261
411
525
60
827
505
915
591
539
436
939
213
500
635
805
872
660
436
153
452
404
537
694
349
176
609
154
67
388
264
159
99
414
758
41
137
516
717
658
987
801
873
279
470
782
58
38
560
226
214
832
6
685
906
301
666
954
459
855
327
286
244
423
526
559
236
723
453
884
681
244
467
37
407
622
944
185
958
173
58
398
537
483
11
9
243
255
422
406
574
756
154
417
795
492
646
203
603
556
416
16
57
241
700
943
349
510
779
260
398
8
812
734
465
589
626
35
545
553
631
224
336
402
716
548
849
683
222
849
903
619
664
373
28
918
966
468
912
948
451
304
594
195
803
788
416
362
235
52
274
54
568
891
252
222
556
181
146
303
667
787
97
428
967
339
387
144
876
415
858
378
906
511
359
85
457
882
674
618
875
860
945
683
944
499
746
985
802
470
670
57
268
454
472
705
546
143
200
828
178
466
128
981
980
802
975
593
649
213
665
758
209
158
201
277
678
572
387
299
805
765
276
343
68
900
980
855
277
491
252
223
447
370
140
112
144
199
358
579
881
737
514
970
571
247
664
910
200
641
525
104
463
171
6
586
55
400
334
665
267
704
716
99
801
122
691
459
482
15
171
26
59
583
843
771
412
450
419
294
869
811
460
277
959
25
154
974
717
579
870
628
796
278
737
402
190
543
393
356
617
56
706
948
709
403
256
5
252
391
811
111
628
830
850
453
169
626
132
65
547
30
345
51
874
753
874
168
54
286
74
596
347
693
899
585
60
675
28
195
79
909
483
830
85
591
280
845
439
433
740
294
448
823
774
801
505
281
254
816
619
542
46
248
733
86
206
67
438
551
863
947
288
296
560
173
114
902
508
947
581
724
180
715
705
2
787
80
342
910
278
612
528
723
138
582
330
892
247
571
270
765
349
127
301
773
57
640
27
724
68
739
864
18
927
651
883
495
943
468
441
818
112
481
913
395
178
405
481
510
917
970
742
924
44
801
48
797
415
699
839
818
380
907
451
662
218
507
914
632
157
473
514
533
158
922
63
389
238
149
309
364
892
563
32
64
845
292
269
78
812
279
223
278
281
210
436
955
563
360
693
255
866
952
952
346
412
206
475
664
848
980
69
298
474
710
363
604
464
101
670
51
263
725
494
89
799
934
455
51
302
503
728
286
268
293
340
622
576
259
986
547
266
204
956
722
852
41
661
281
624
294
873
977
871
515
891
50
52
958
204
411
303
842
492
537
881
534
924
870
673
208
551
369
508
99
567
488
731
705
204
302
231
610
44
359
511
330
939
158
728
923
76
840
584
780
432
187
920
445
472
252
635
927
919
48
378
750
799
194
384
995
540
439
43
953
807
746
700
651
476
68
982
702
870
163
691
806
234
844
457
219
203
231
677
771
735
558
732
465
565
312
188
750
260
777
266
576
896
17
294
555
208
482
193
672
123
559
792
972
645
941
736
850
124
208
801
5
939
233
740
919
202
465
214
950
148
142
50
799
975
172
976
43
866
50
82
531
587
470
100
10
828
839
532
535
957
104
888
178
212
94
990
661
110
799
914
84
872
289
517
384
852
588
764
114
282
744
761
756
529
427
892
284
198
885
379
674
761
214
895
188
854
810
895
383
313
965
522
39
149
211
211
711
549
455
217
593
625
423
826
129
212
731
989
167
410
622
560
93
917
557
222
816
504
164
83
888
77
918
386
65
423
804
217
200
207
218
502
371
525
197
498
937
714
476
689
319
937
470
900
114
187
971
650
802
634
101
492
99
538
703
12
495
717
877
532
622
194
824
438
592
579
643
309
327
393
855
398
300
926
443
776
171
351
776
308
930
898
659
987
823
235
388
714
108
376
220
402
320
997
451
493
732
788
70
560
642
236
722
572
66
448
875
29
88
952
226
873
326
248
943
366
432
682
183
79
924
217
187
427
267
917
753
305
21
416
429
556
380
926
48
375
728
900
332
510
637
718
543
333
625
93
777
672
54
314
55
783
862
859
605
260
567
835
533
328
934
799
159
620
333
883
248
181
586
518
956
448
463
430
67
508
262
808
751
169
132
768
781
556
550
63
720
231
142
467
619
663
769
133
261
713
627
827
970
120
882
23
389
833
287
932
705
770
674
100
249
308
150
804
492
574
991
199
780
297
482
837
259
747
596
796
51
94
869
516
352
235
956
672
921
69
77
523
525
534
459
390
95
505
751
45
747
791
547
425
437
100
240
188
548
910
372
450
571
239
888
94
780
954
263
344
121
395
818
950
737
206
875
805
815
223
695
26
639
151
658
696
74
545
910
14
57
258
307
844
484
663
881
890
872
677
664
948
517
526
518
654
823
473
824
963
330
326
574
722
929
577
49
221
486
267
450
186
35
306
843
5
843
8
408
256
757
586
508
85
41
529
453
490
444
986
629
984
446
321
947
311
685
875
480
153
963
845
18
570
506
760
901
612
585
787
23
224
166
273
62
673
481
241
711
282
391
744
655
401
304
961
144
141
714
656
370
567
448
970
506
591
137
585
285
693
52
624
973
716
101
957
674
780
876
780
690
346
485
347
10
404
208
361
564
992
314
360
718
759
4
848
815
313
318
789
250
44
828
706
825
813
718
24
503
452
90
454
106
661
294
759
946
960
403
460
442
69
975
463
576
76
895
445
338
187
431
532
827
753
610
182
985
777
237
393
544
372
817
15
720
519
338
641
264
391
670
461
89
240
578
675
816
499
857
704
641
718
881
281
583
784
119
287
830
210
143
996
144
824
870
845
173
847
749
494
801
769
441
960
769
148
622
865
933
96
86
997
487
258
949
900
772
854
969
666
119
552
760
906
749
345
338
604
379
216
614
649
567
695
735
612
956
755
303
406
457
509
433
834
792
801
494
435
761
496
838
108
388
968
76
506
37
755
892
952
884
43
134
540
64
567
935
810
258
849
183
360
634
715
902
31
769
46
831
865
575
389
312
397
161
814
753
643
14
28
950
814
600
6
930
217
427
532
642
966
840
243
484
74
901
880
89
246
130
603
151
978
855
47
196
110
959
900
916
719
320
85
180
684
230
691
495
631
727
390
835
704
14
88
135
516
52
659
392
277
716
912
159
237
341
793
321
870
140
377
555
322
100
613
442
989
163
988
348
138
414
599
490
219
184
313
550
27
315
273
999
883
479
863
511
577
170
544
62
790
669
390
738
971
908
618
715
193
931
49
122
830
472
711
129
796
864
378
277
229
528
972
517
63
282
776
597
116
651
532
688
694
88
399
351
431
742
995
13
422
892
101
193
317
175
610
340
301
996
974
516
804
157
192
757
992
525
565
629
925
194
622
983
19
951
19
117
898
797
793
562
779
574
971
330
708
928
530
34
997
332
230
765
333
201
472
246
264
793
110
2
231
107
472
547
361
857
394
45
644
361
66
162
358
333
343
618
418
421
69
618
985
637
384
967
326
85
181
853
848
624
751
934
892
851
429
692
638
77
264
48
264
891
299
20
130
668
155
665
54
715
155
913
312
663
869
538
269
462
820
524
235
933
672
750
135
42
17
411
729
51
849
768
702
588
841
84
905
747
828
416
166
194
614
448
518
428
345
993
938
32
397
799
712
235
614
824
525
713
554
87
86
318
830
522
470
773
675
665
706
115
743
103
822
229
55
489
861
427
225
928
5
650
990
93
553
31
24
986
741
592
268
794
602
6
790
688
977
196
822
491
265
819
338
468
610
608
396
623
694
734
994
88
354
771
231
351
423
403
629
336
129
908
693
678
794
454
982
458
757
410
696
376
30
432
782
442
379
693
727
843
908
877
291
328
942
228
494
864
818
34
589
123
505
466
537
238
159
94
608
147
823
194
657
353
989
12
833
13
835
727
901
535
965
531
761
118
991
814
67
426
743
844
183
756
518
31
121
379
771
631
977
352
77
998
22
445
572
347
529
405
824
499
61
321
391
774
71
914
899
892
687
601
378
200
700
828
233
375
802
332
806
260
324
907
137
187
172
809
57
243
63
665
332
422
14
972
97
164
683
495
309
963
231
965
533
549
849
134
615
55
859
360
313
80
898
131
411
933
287
654
863
434
562
877
350
634
151
108
977
297
292
523
818
168
870
827
106
204
176
551
45
212
150
35
562
935
585
913
621
235
14
425
112
885
764
509
955
160
56
120
881
281
186
578
709
219
217
623
965
675
162
803
942
830
46
999
752
423
600
180
699
803
391
837
290
675
878
28
293
133
873
126
290
752
688
589
807
843
812
324
603
454
33
743
983
441
551
465
155
360
170
699
79
932
392
960
863
788
950
664
167
628
872
917
705
768
215
691
253
597
277
655
661
490
316
404
831
952
859
232
346
759
614
365
48
488
938
391
603
643
963
294
31
464
820
673
724
259
305
28
495
292
773
211
269
65
316
159
797
898
469
240
324
595
949
855
930
240
798
390
34
405
988
802
721
330
204
102
104
332
960
995
400
596
60
99
664
969
837
143
412
94
64
130
147
167
803
316
64
406
704
957
493
385
640
572
659
919
862
256
622
932
229
21
185
27
548
437
965
946
930
60
537
440
185
238
613
236
704
20
941
433
525
113
304
348
498
131
10
617
18
423
935
19
803
732
481
165
18
621
856
291
888
192
469
252
966
313
758
800
587
296
962
839
754
483
872
299
459
428
573
11
824
477
93
436
903
105
430
559
764
104
89
990
776
126
9
943
26
60
48
180
703
545
403
485
392
842
964
392
519
378
833
936
599
67
866
316
321
662
693
779
590
32
923
2
50
292
536
465
449
143
417
364
715
924
77
815
233
965
70
416
99
364
569
849
401
602
656
282
90
255
360
641
481
996
697
652
230
737
850
733
720
756
916
473
309
553
624
137
467
945
448
154
405
586
867
489
966
91
260
223
713
354
282
340
386
480
442
402
356
996
917
190
969
827
662
563
942
255
984
969
692
795
146
744
570
88
409
896
817
136
627
319
45
279
143
887
677
331
835
421
877
83
798
34
862
365
170
340
595
679
289
514
698
41
89
193
603
711
546
991
486
231
747
547
701
789
650
121
9
471
904
989
85
191
963
799
477
596
708
65
765
945
432
119
666
733
883
593
842
760
537
926
323
437
313
632
836
829
847
280
693
491
989
562
796
675
117
64
957
551
732
756
282
769
631
868
8
37
807
858
637
933
542
984
26
790
864
577
609
709
798
557
907
647
2
128
486
862
516
754
459
150
719
693
338
567
364
611
154
305
759
265
434
662
236
365
763
44
952
188
929
912
541
3
792
664
712
578
166
838
272
616
244
71
97
374
365
797
300
129
698
535
213
844
835
87
926
156
677
430
977
672
168
939
532
316
161
205
252
643
938
482
829
616
733
881
391
111
340
661
642
63
905
682
667
882
271
924
653
705
181
837
305
958
660
881
340
91
677
359
391
748
621
69
148
36
961
465
901
879
104
607
459
470
563
634
147
303
797
185
843
641
670
66
729
949
372
660
237
360
263
964
453
939
643
139
65
695
182
836
683
621
916
151
242
581
74
830
808
222
501
79
468
542
107
420
9
376
110
486
962
476
122
988
476
868
697
192
280
906
233
105
941
640
181
228
183
142
304
130
987
53
410
424
989
717
379
880
114
304
358
901
676
459
887
771
359
253
87
51
110
587
368
80
348
14
657
973
918
944
30
430
162
191
224
522
189
579
373
611
828
773
673
356
232
173
772
926
172
573
789
841
551
240
281
523
768
580
755
616
205
182
155
928
895
683
817
752
152
570
267
899
263
835
480
705
871
179
621
216
624
737
118
980
494
716
144
614
595
30
583
778
361
347
606
140
558
873
686
610
96
564
787
293
660
19
996
179
299
568
905
194
58
577
657
375
328
609
280
29
879
662
335
421
370
586
408
8
257
146
80
175
612
243
901
479
432
13
113
592
378
150
175
685
82
710
904
585
537
707
871
621
996
329
810
862
26
459
556
417
276
690
170
256
213
889
226
589
364
349
75
417
244
160
156
651
747
137
673
582
131
402
718
955
497
957
716
204
622
568
50
619
692
87
924
498
207
856
908
639
762
842
582
168
946
983
788
950
841
643
602
251
623
482
915
825
522
873
562
440
121
168
935
993
378
707
778
462
683
259
106
249
185
304
315
113
808
415
287
453
469
242
750
602
735
332
755
719
780
815
575
954
975
254
594
781
342
720
228
711
713
704
342
520
263
320
657
211
297
547
748
567
74
871
830
349
519
406
673
839
295
199
451
713
453
843
302
101
976
905
991
283
960
909
391
100
630
622
82
662
571
22
379
979
496
276
378
8
6
642
58
633
886
249
92
509
472
718
574
404
963
979
761
732
650
47
845
611
282
96
177
603
977
79
894
249
459
48
416
106
281
860
471
417
676
956
746
547
717
534
789
278
284
278
791
695
244
816
340
866
765
37
882
79
763
627
238
496
707
637
680
10
422
655
388
796
105
610
139
795
216
347
630
862
148
66
407
41
103
854
352
483
474
622
107
222
927
399
365
26
35
731
167
273
856
789
815
994
812
766
238
630
509
254
350
684
999
332
672
112
816
70
18
970
954
138
461
259
942
856
660
154
193
594
333
689
864
980
14
930
404
281
909
657
559
199
150
119
208
386
408
802
131
259
300
371
176
953
453
687
406
424
264
295
832
989
746
956
967
486
969
701
217
849
787
17
470
353
837
796
670
388
681
688
969
879
525
170
638
317
381
185
897
365
886
703
659
788
278
854
433
682
582
218
183
334
100
601
659
402
948
247
83
709
904
177
220
153
31
386
318
291
664
768
731
626
748
644
526
384
937
629
289
157
175
292
370
3
851
286
176
674
702
987
745
83
209
797
464
336
207
752
994
807
140
985
404
73
278
992
731
865
986
731
701
657
332
892
434
321
129
636
595
958
482
909
371
888
102
96
964
449
718
439
418
69
414
677
440
621
484
455
772
340
112
738
557
619
194
439
895
367
534
668
847
804
265
222
927
131
279
976
803
689
307
131
547
673
694
591
258
142
133
544
228
133
40
60
564
432
9
217
347
697
535
18
753
31
634
889
375
263
380
182
335
664
951
47
877
595
621
196
792
513
811
882
612
216
73
170
280
789
737
597
683
849
884
807
777
239
641
218
683
119
850
782
261
978
484
568
140
397
49
411
295
18
218
715
60
270
105
757
4
59
728
747
849
158
632
908
653
713
298
770
535
264
535
857
738
449
247
188
703
999
418
512
241
611
5
824
890
113
606
335
945
410
200
39
732
875
685
857
62
925
49
235
797
227
203
530
342
974
143
158
833
370
565
799
272
40
420
576
310
696
220
243
375
624
811
93
295
31
283
773
269
81
803
708
101
750
815
263
780
932
454
506
892
962
918
268
286
228
995
686
525
129
279
426
91
266
792
63
305
283
639
866
517
463
842
698
696
992
327
357
228
423
236
964
156
907
633
620
107
211
179
440
210
863
23
675
956
273
426
550
996
941
281
773
337
777
849
345
122
79
623
128
602
257
780
366
831
168
536
712
84
102
494
657
660
289
716
491
504
798
613
391
663
409
265
280
208
767
482
164
759
836
573
326
729
792
384
670
648
916
553
792
129
256
632
290
287
851
277
388
486
654
328
230
616
342
566
397
918
606
688
515
687
983
309
684
353
761
272
659
87
445
347
65
619
504
802
590
723
840
466
457
590
81
716
852
40
324
721
280
897
917
84
391
512
614
770
46
583
550
343
880
544
192
859
42
273
937
904
781
818
139
940
904
195
300
329
472
138
335
292
336
401
939
97
53
20
505
384
415
368
490
174
491
798
144
501
295
737
583
287
296
587
968
865
682
201
92
200
206
261
615
965
361
373
363
753
125
733
505
185
412
241
566
751
348
564
954
516
286
777
785
932
775
955
966
430
392
388
851
841
576
601
349
277
211
490
180
90
855
757
436
488
825
84
674
80
282
343
286
849
753
592
665
19
846
228
427
653
750
318
722
377
146
515
374
274
132
677
548
445
681
168
949
749
441
63
375
247
896
286
871
789
384
996
756
60
944
485
466
180
320
129
135
54
562
568
224
624
839
459
212
743
984
48
75
781
580
132
126
695
95
337
404
514
558
510
783
696
120
39
485
108
730
35
838
935
708
292
231
612
660
815
50
187
172
142
564
344
224
882
15
372
73
805
610
169
458
640
291
174
662
100
361
296
276
656
132
452
788
544
8
494
758
701
701
857
708
455
915
240
278
319
795
438
438
752
331
975
349
557
28
495
947
60
23
330
678
300
591
911
271
2
364
395
817
709
342
762
749
526
324
419
90
860
687
748
931
973
352
169
76
823
242
562
117
343
805
606
19
804
987
725
534
281
162
762
104
768
914
937
750
251
162
111
366
120
115
437
930
856
934
155
267
502
514
647
91
13
654
442
710
437
625
26
82
608
276
808
798
955
18
37
377
788
549
686
390
672
165
724
970
283
964
387
934
633
749
320
898
968
237
997
296
754
909
586
523
834
327
553
337
262
880
193
441
892
915
73
393
932
774
564
341
775
815
193
819
543
369
664
291
974
867
703
80
626
367
588
437
772
443
21
713
961
785
650
337
160
299
154
490
17
862
419
197
535
436
601
307
782
516
126
15
802
821
211
628
793
98
182
743
28
819
576
697
761
599
329
311
727
901
439
6
900
920
935
717
291
159
571
251
613
592
902
997
842
47
929
746
515
708
241
64
334
606
882
288
552
400
636
632
722
384
485
467
265
747
58
972
565
548
610
932
612
618
534
995
681
208
343
31
781
159
242
348
395
590
699
38
683
405
454
843
441
285
731
345
346
143
609
159
87
187
918
403
459
590
680
689
821
320
566
436
586
182
461
292
170
648
840
949
738
274
113
965
94
13
55
566
386
684
741
351
353
875
130
624
433
691
766
675
335
790
673
893
51
528
671
285
782
660
746
663
690
73
355
113
819
990
691
421
433
380
820
902
863
98
769
457
99
304
437
390
146
152
203
906
136
640
273
31
920
936
126
307
261
772
591
935
405
403
805
231
799
965
318
788
596
303
192
731
420
306
171
522
775
339
924
887
877
784
405
733
989
176
155
210
324
775
14
886
336
829
328
966
862
484
825
640
129
252
343
195
413
709
407
716
332
812
411
530
944
733
816
239
4
910
808
871
152
814
814
503
715
790
789
671
739
11
78
584
749
167
935
928
207
607
263
57
158
277
238
556
524
901
881
382
133
246
682
995
700
89
348
843
508
232
749
196
649
548
160
597
199
913
80
386
195
588
56
31
967
214
8
488
727
251
960
891
58
765
150
250
213
730
393
493
544
116
519
836
331
337
33
988
820
474
263
868
799
333
146
966
341
294
991
715
670
176
516
127
137
250
61
719
474
185
641
831
456
526
676
59
585
808
918
952
930
609
331
741
189
847
991
190
718
578
541
258
594
821
658
682
558
40
636
322
429
267
539
807
557
216
603
3
547
571
438
334
740
361
936
808
191
19
529
737
244
337
883
876
223
891
800
718
762
197
573
230
251
868
431
412
752
723
545
669
392
182
620
137
649
96
565
936
497
925
332
557
175
790
363
525
279
698
800
222
828
723
280
897
249
71
231
959
163
96
723
531
145
268
874
994
510
558
838
948
151
610
489
410
622
141
550
679
666
699
74
53
7
548
81
378
179
284
680
98
422
982
157
273
278
83
616
764
603
525
762
727
28
876
796
37
62
923
700
652
323
220
58
354
873
83
55
492
912
812
914
61
297
126
699
592
483
118
813
304
562
847
559
474
196
392
146
947
891
326
950
912
217
836
63
392
863
843
12
858
846
323
636
838
148
389
499
397
509
99
506
509
630
673
688
37
516
247
273
740
773
126
845
438
219
996
7
53
274
953
553
126
812
105
242
837
576
826
53
829
273
681
250
121
859
39
954
925
977
378
314
727
337
147
743
56
538
941
569
953
349
311
569
286
146
802
754
121
629
685
584
594
40
787
523
490
459
951
436
239
87
243
751
432
628
301
730
857
530
234
345
53
368
927
920
910
770
665
538
12
405
295
601
997
543
541
636
750
226
829
322
903
424
346
744
637
666
764
728
237
402
610
562
921
251
654
204
238
287
647
763
626
85
402
611
329
424
205
420
310
736
251
242
975
537
961
827
916
199
987
24
594
319
746
530
182
740
225
451
529
623
195
996
328
548
970
867
405
754
860
181
501
192
412
171
312
877
618
986
153
69
842
207
358
926
803
438
469
927
171
113
604
598
226
820
250
395
595
305
553
632
623
322
246
783
743
87
582
665
851
248
345
156
116
698
904
570
38
824
708
925
235
465
580
194
314
20
817
829
367
477
226
823
493
692
197
721
849
726
943
634
408
308
85
832
306
385
726
150
771
235
3
936
503
770
573
627
136
647
687
146
386
313
872
266
265
246
207
445
819
998
710
121
556
230
948
936
634
257
605
354
463
510
400
244
2
718
807
784
381
942
596
734
654
444
59
380
157
500
336
816
388
612
826
663
994
264
158
621
170
837
73
987
537
783
919
374
137
123
477
692
557
466
334
33
529
5
815
610
218
80
59
510
983
267
59
679
570
479
87
563
795
303
279
789
258
562
782
10
313
938
504
272
99
988
319
139
719
775
260
606
956
535
394
586
586
307
499
781
592
639
198
615
62
73
870
545
996
582
577
781
126
92
477
786
183
153
278
846
898
502
80
497
961
150
843
616
375
709
228
49
170
868
745
817
998
55
270
232
291
971
562
213
914
898
94
121
416
248
282
834
769
318
125
487
349
672
506
440
704
664
844
154
586
95
857
825
44
922
754
377
478
256
364
296
996
431
771
84
890
435
259
816
893
747
156
441
439
786
417
295
519
410
132
270
329
249
910
427
671
371
91
298
546
369
650
813
369
822
586
506
565
366
990
706
950
475
549
322
265
930
370
257
926
92
23
867
330
700
375
75
398
543
274
936
601
385
374
62
639
456
739
687
655
298
17
221
466
939
408
113
326
922
404
237
938
852
158
776
842
430
144
560
778
320
610
642
295
231
114
839
898
920
728
479
198
64
424
845
212
120
914
661
427
139
289
300
480
363
639
607
131
827
93
107
936
176
122
107
4
566
623
938
901
229
92
544
889
501
716
802
541
827
310
558
241
88
33
569
209
452
810
976
884
645
958
601
281
968
285
730
116
376
526
252
554
823
897
515
934
160
13
817
391
982
602
650
848
986
102
622
629
855
113
552
290
997
283
459
106
206
251
684
300
478
248
39
951
208
627
28
384
760
395
442
31
937
55
43
451
222
904
699
655
777
318
119
654
602
431
176
529
89
507
984
401
687
192
503
664
768
191
673
811
358
635
505
938
470
29
203
646
438
870
82
117
796
686
610
333
352
967
377
624
17
173
884
607
334
801
48
208
696
25
138
910
743
665
442
202
274
557
713
581
910
797
648
24
426
939
306
82
932
199
918
932
33
928
919
940
319
97
70
122
247
371
595
961
891
344
25
824
947
51
564
713
242
495
893
529
61
798
437
145
456
683
640
381
383
669
855
404
611
450
886
413
162
716
521
620
941
372
155
396
205
294
859
520
65
508
362
117
665
924
574
478
913
857
377
173
922
184
226
950
22
330
67
208
533
51
437
387
687
176
137
524
334
735
585
259
666
961
259
519
545
122
600
80
333
968
918
538
586
791
327
687
25
897
380
425
248
475
273
559
790
462
313
25
163
290
352
318
442
250
568
373
56
563
482
696
263
48
981
545
206
75
969
703
590
747
510
537
640
31
254
470
707
920
770
652
700
354
746
976
105
474
721
368
229
445
749
942
344
687
427
424
848
638
397
739
273
769
33
118
348
908
427
618
993
530
841
548
231
156
463
970
418
637
358
963
899
862
88
164
628
644
797
691
958
876
407
940
894
736
722
752
424
715
506
865
157
218
26
687
720
31
527
528
2
609
678
627
395
494
113
869
832
219
168
43
758
245
317
28
698
658
178
639
413
810
347
321
902
856
811
63
480
719
473
257
814
91
859
560
689
306
15
876
153
561
431
596
676
906
970
765
964
77
349
973
906
585
565
387
433
933
236
103
74
887
963
102
667
114
268
717
956
392
927
725
925
30
472
141
158
796
598
371
202
349
292
37
613
109
775
911
150
75
60
807
733
813
429
822
160
445
248
114
675
290
839
284
351
645
284
749
808
947
479
153
883
495
238
875
78
667
238
58
441
344
850
857
755
876
185
99
574
476
44
875
541
675
748
648
283
320
487
872
57
37
997
217
991
32
841
595
768
155
44
208
797
711
585
959
423
543
904
695
43
96
942
94
429
802
736
509
914
409
253
485
964
2
567
865
339
606
853
949
834
455
386
918
835
480
872
414
117
940
833
947
702
169
629
463
663
159
543
372
394
548
673
576
570
956
581
603
962
738
525
744
971
102
623
968
626
737
883
285
871
631
303
40
4
101
723
942
332
665
959
842
67
589
461
276
696
789
402
271
293
164
164
869
523
17
767
142
469
143
17
965
697
476
807
489
554
746
534
42
568
185
233
221
399
913
22
269
257
430
216
778
287
166
20
625
432
659
886
621
953
965
410
144
20
454
133
211
830
528
96
416
186
212
613
904
687
795
23
869
906
863
850
570
17
791
678
179
372
373
120
390
102
458
602
636
537
152
690
829
575
312
115
673
883
66
520
592
516
342
99
820
247
987
126
497
490
652
62
679
855
912
127
143
129
534
571
536
621
367
326
256
243
993
992
571
185
206
931
707
791
315
24
473
201
816
135
899
274
555
951
18
418
530
210
877
58
709
848
216
956
640
371
728
128
520
821
785
137
488
21
393
26
454
618
84
511
738
689
77
734
947
129
607
650
204
735
617
889
52
181
369
416
112
783
373
292
727
608
25
91
35
193
42
744
166
131
314
143
59
308
236
266
123
297
239
596
298
580
406
643
592
43
90
611
167
540
131
160
982
867
979
553
264
344
354
119
521
631
430
595
506
968
72
682
591
844
271
882
567
369
196
867
779
184
175
289
914
317
232
687
435
346
860
66
616
474
381
72
482
937
677
436
535
582
545
212
909
327
609
455
489
356
711
690
464
347
806
941
150
784
832
6
515
6
538
563
909
881
265
379
547
814
206
381
652
445
243
357
592
203
974
49
680
203
188
851
181
908
490
766
340
61
744
831
244
571
515
314
21
724
217
867
727
124
326
360
958
780
349
309
718
665
508
774
144
304
22
777
519
931
46
403
959
794
860
127
294
57
384
22
241
393
509
532
722
512
734
99
31
738
585
6
135
626
6
664
676
587
123
522
115
439
291
15
381
211
685
170
74
738
986
738
851
974
393
257
893
654
463
359
763
539
362
54
98
552
214
492
945
56
725
484
30
190
614
504
488
222
760
431
91
12
632
340
638
703
735
295
753
726
796
931
431
574
320
111
691
753
783
783
612
265
389
873
185
41
679
638
854
962
258
209
42
680
19
640
43
397
226
991
797
700
162
607
263
771
475
865
631
811
413
428
166
180
946
402
142
651
494
59
266
617
952
575
298
822
120
954
618
589
326
990
416
265
598
290
871
853
884
446
646
399
339
611
185
222
493
189
475
741
3
471
908
965
10
580
708
900
949
999
33
31
652
483
311
773
104
615
337
848
16
753
161
700
731
595
715
732
157
471
584
229
651
373
315
366
7
917
776
76
179
808
112
152
196
870
520
917
885
575
388
937
166
647
683
892
327
766
812
690
618
78
536
198
586
13
636
593
734
262
827
444
192
96
353
105
599
698
243
64
199
475
379
847
422
93
255
959
742
500
556
959
962
6
436
663
828
988
271
894
166
138
690
701
51
141
778
505
450
32
86
745
375
993
960
733
770
699
965
634
616
205
636
452
695
835
893
641
154
920
61
992
702
380
838
347
369
572
516
283
427
446
423
527
226
945
162
168
691
242
372
577
242
190
341
550
53
451
660
607
574
857
65
34
368
304
666
10
630
260
779
68
557
229
76
608
489
290
419
364
949
74
515
362
865
662
759
932
744
360
109
661
791
963
423
820
880
679
71
946
11
878
66
475
726
334
928
642
32
792
185
100
186
259
115
381
816
535
904
372
207
178
193
377
280
822
332
18
828
294
966
118
574
759
406
87
24
425
464
198
338
19
2
831
973
329
30
842
269
933
538
691
296
428
812
673
236
330
784
508
756
297
778
924
314
384
623
361
682
328
278
554
93
113
33
98
102
104
208
648
564
378
229
177
414
733
943
422
309
768
989
76
258
735
381
619
653
216
296
633
623
599
919
733
917
204
435
916
591
151
788
228
804
661
868
332
470
236
26
975
276
155
586
321
495
112
124
513
180
110
949
813
646
225
573
372
196
878
781
956
414
701
396
511
687
918
756
93
980
953
544
26
378
275
577
98
856
921
848
524
181
70
368
183
525
912
276
750
136
909
110
252
805
232
459
62
880
676
355
659
605
619
613
562
228
226
539
378
140
977
788
941
290
795
854
322
996
82
733
770
653
420
341
159
934
973
357
936
560
769
549
690
455
497
927
921
751
252
151
237
259
366
831
496
96
170
106
166
631
851
192
748
454
569
576
160
535
935
837
302
485
255
245
450
501
938
254
864
115
234
697
285
897
970
451
32
742
743
909
576
707
235
363
794
598
227
759
793
677
991
783
483
589
277
233
55
306
675
163
712
372
307
516
687
483
818
91
672
624
243
28
302
497
798
942
330
156
119
960
823
884
238
512
808
875
267
88
863
317
727
605
480
658
561
604
778
687
509
260
195
138
224
325
731
777
352
654
677
261
146
460
950
606
818
714
491
472
131
892
438
93
454
265
31
504
204
865
572
456
565
783
976
163
186
613
671
167
960
474
561
720
936
911
138
351
810
580
923
991
677
489
242
324
935
553
611
29
771
588
587
869
544
53
582
683
860
165
977
975
924
629
745
497
423
636
569
611
9
308
55
284
251
272
507
754
686
502
998
543
548
734
146
749
169
535
513
325
40
916
848
126
515
118
206
135
700
555
913
169
653
206
221
699
818
946
903
220
727
367
333
428
786
586
19
913
581
784
704
881
930
784
929
656
35
116
353
915
95
30
490
40
407
622
596
897
747
231
941
460
771
343
631
222
508
507
200
908
129
265
219
691
780
690
904
877
487
999
310
827
229
258
881
416
518
924
996
980
258
635
288
768
19
178
680
375
951
200
31
205
934
149
712
146
898
90
447
173
946
220
197
172
322
559
348
403
806
809
398
617
386
189
782
228
672
921
668
387
508
808
481
867
517
923
94
948
260
816
632
542
250
621
869
42
107
817
876
606
88
290
971
860
369
147
599
148
432
106
953
456
292
91
334
635
480
668
325
722
797
37
115
57
846
878
734
392
802
831
142
397
329
548
118
296
700
880
445
247
298
413
25
388
748
133
52
370
284
792
476
399
640
962
715
758
897
681
655
992
796
962
201
21
927
337
364
724
155
907
806
327
486
58
809
622
743
383
656
156
448
562
102
507
444
453
464
254
466
960
303
572
688
25
767
13
405
151
958
36
877
513
15
342
159
899
461
19
755
791
622
418
564
642
108
16
712
877
201
445
195
405
864
896
431
27
964
569
241
249
887
602
395
677
810
825
60
933
748
862
372
470
87
35
492
392
778
418
909
831
657
661
198
218
428
922
280
872
13
11
385
929
247
978
427
782
87
163
399
10
282
503
504
561
48
209
272
21
886
49
500
548
572
580
685
953
24
640
496
62
537
172
575
450
773
697
545
381
86
315
390
977
603
605
238
352
436
97
604
247
690
59
654
577
356
697
857
429
323
758
193
645
59
4
640
675
890
622
140
698
585
403
848
153
88
992
215
228
296
663
204
705
100
398
109
39
25
167
121
238
582
101
138
346
652
662
525
85
488
994
451
596
381
924
592
701
728
603
44
913
90
809
336
172
602
790
398
33
353
25
177
805
60
136
373
701
523
724
89
258
984
40
696
855
880
211
622
76
480
448
282
760
499
127
867
911
908
412
941
377
488
240
664
402
598
116
199
673
544
299
462
157
300
462
381
148
720
263
260
179
907
534
922
552
886
533
926
451
888
803
514
349
63
103
886
121
848
237
504
696
179
47
825
721
375
256
488
877
716
315
24
583
460
908
996
389
452
911
135
570
347
375
916
450
980
727
46
258
561
56
805
8
927
15
533
674
846
510
311
959
921
909
94
670
914
387
904
319
465
261
348
379
195
63
540
227
10
640
668
968
487
320
740
196
744
823
964
649
731
308
684
732
255
7
454
905
335
682
307
50
77
762
944
457
775
467
262
281
333
206
208
669
810
508
571
709
835
833
710
430
196
974
238
904
450
347
413
996
688
388
138
591
364
165
472
881
609
668
691
845
818
343
211
941
143
918
519
469
745
904
31
628
101
539
388
854
961
217
176
856
464
14
302
910
532
853
122
639
23
997
439
310
781
417
481
706
167
909
377
150
940
415
615
140
756
779
782
57
402
846
575
67
107
329
426
655
38
691
970
192
285
706
479
933
548
174
525
849
457
380
106
95
447
336
44
746
446
967
879
786
474
909
802
44
814
913
886
471
372
421
136
900
805
384
18
308
955
623
764
764
24
766
660
193
310
499
659
179
224
400
293
784
38
807
669
740
923
467
78
890
684
285
910
635
403
514
192
153
765
942
467
140
902
413
951
273
962
991
805
536
968
951
429
581
230
701
94
214
387
952
83
456
862
413
696
265
212
111
602
806
443
575
760
233
59
392
338
483
977
234
617
575
192
42
143
927
489
232
712
458
917
389
370
266
47
486
4
64
147
486
966
302
345
8
745
205
528
117
201
253
625
473
502
613
793
976
111
24
527
852
788
532
725
455
860
309
744
131
51
131
451
324
675
224
327
101
679
263
14
323
868
103
229
56
593
552
676
689
417
862
67
920
795
280
562
306
891
515
725
362
116
798
892
639
48
821
607
873
203
115
897
448
410
562
420
613
936
201
304
955
839
585
38
701
89
814
190
862
547
576
214
960
997
173
143
806
108
109
337
68
973
718
142
903
997
77
902
728
719
352
974
411
546
789
404
163
167
441
198
981
323
429
294
577
612
91
999
624
993
798
471
454
498
403
700
698
789
340
336
587
893
395
712
709
665
584
671
144
572
930
192
735
304
703
783
503
3
267
773
904
737
171
547
259
262
636
5
540
266
622
255
802
647
31
299
823
532
767
213
86
624
635
440
42
911
43
951
325
158
444
77
974
796
422
614
937
768
877
78
85
18
77
262
137
432
844
58
997
97
780
232
871
651
901
998
888
995
372
295
197
414
901
848
371
425
882
527
784
357
687
518
148
186
760
12
664
959
367
114
459
657
406
201
911
313
693
22
232
920
758
575
557
967
209
9
646
274
784
880
191
82
75
876
146
480
68
798
341
292
442
838
251
116
386
143
276
65
792
677
576
957
475
906
111
607
262
597
208
76
94
851
202
519
895
18
103
110
984
752
378
674
509
457
305
436
881
401
594
689
400
560
219
56
532
23
346
62
107
880
719
845
680
964
268
723
748
777
860
199
200
348
297
30
460
746
712
510
214
265
978
117
724
835
977
761
272
918
813
700
750
644
576
889
41
246
609
629
26
972
510
977
776
736
933
806
321
38
504
196
273
531
299
682
180
639
462
673
598
725
880
84
458
232
62
944
871
916
710
745
845
716
214
893
205
781
698
246
776
102
627
756
254
945
212
961
486
152
675
622
485
41
624
436
345
163
850
202
442
364
801
620
795
842
324
651
138
39
392
371
866
760
849
634
540
628
405
802
253
341
688
544
177
964
510
210
156
286
680
772
725
909
653
844
189
870
334
284
903
409
410
934
592
875
427
934
567
680
609
732
352
38
670
896
222
859
954
338
346
806
499
721
854
509
774
973
586
40
928
378
609
572
441
859
224
59
762
894
622
157
411
938
253
639
29
653
161
881
416
363
196
666
189
969
627
273
497
336
739
651
169
467
944
103
163
154
40
468
917
863
195
543
44
162
796
999
571
580
322
356
264
619
39
947
856
327
972
598
241
663
317
246
450
50
772
22
596
166
795
258
894
380
131
426
612
801
764
854
140
167
251
615
462
58
328
697
611
556
817
799
494
977
806
248
358
719
591
830
278
375
292
827
916
855
763
610
229
977
263
560
509
608
905
975
792
53
166
552
636
133
241
632
59
771
130
537
106
537
730
49
156
215
562
735
535
53
620
779
678
563
279
543
16
871
536
666
32
397
39
824
648
284
896
391
759
223
210
100
836
320
660
712
440
794
761
186
581
371
456
219
231
588
322
965
629
237
164
122
750
92
139
259
670
777
558
300
147
235
279
621
643
547
373
330
145
823
654
984
564
87
419
836
190
223
478
373
646
270
371
492
291
692
594
451
579
481
321
325
213
561
646
921
354
301
364
181
113
143
408
240
994
652
859
572
47
985
246
28
194
320
405
603
733
23
400
402
788
357
173
933
677
561
35
788
75
356
871
357
406
993
313
945
317
832
883
465
452
664
718
641
185
793
502
636
523
386
803
836
636
452
313
186
615
897
486
185
379
591
835
433
753
569
890
96
559
823
177
300
885
861
294
896
175
879
682
982
757
740
338
413
780
692
654
60
807
719
188
72
167
378
509
665
884
617
37
779
198
875
162
286
198
783
838
544
231
964
134
42
644
982
278
846
298
822
991
446
907
618
244
294
376
772
188
321
917
332
550
739
332
510
158
493
972
116
218
748
63
540
106
770
239
67
4
605
343
377
694
32
640
364
133
755
974
522
833
293
334
295
561
525
805
143
332
788
526
550
159
275
267
666
680
769
779
556
257
563
194
816
958
26
11
245
693
855
397
350
823
679
898
839
322
99
678
173
171
946
616
527
38
427
77
7
920
999
416
553
271
161
653
926
897
311
349
115
508
754
849
862
319
897
685
828
327
734
292
842
337
332
77
611
692
36
723
482
111
891
980
489
941
411
412
396
462
561
607
118
548
564
611
802
722
543
255
994
154
559
454
733
481
494
654
513
428
301
6
15
887
706
163
848
40
816
979
174
24
926
729
178
45
608
901
361
503
970
908
718
602
264
786
162
500
879
780
395
137
593
195
153
126
553
965
860
470
272
234
837
411
610
623
12
607
173
444
290
740
35
467
674
639
484
727
322
54
230
674
984
154
786
808
837
521
736
317
547
38
71
294
772
300
349
629
83
839
416
726
711
851
94
747
540
381
61
54
107
716
825
740
408
150
430
219
504
375
295
181
29
794
378
252
481
191
231
155
46
379
643
227
132
123
106
610
94
340
946
597
729
301
557
116
393
976
470
753
644
793
592
197
355
714
359
393
414
291
103
301
146
529
213
895
705
77
562
171
280
698
14
789
97
294
119
205
256
306
69
474
517
634
649
301
330
325
866
350
684
239
281
46
883
999
863
398
735
508
731
583
361
960
932
90
676
88
279
307
463
136
847
908
857
196
608
145
531
730
506
517
77
822
335
316
7
933
792
728
642
544
229
64
756
951
29
557
353
825
313
316
385
855
589
174
20
877
85
785
22
49
994
453
145
808
200
376
508
82
658
745
713
292
543
933
47
586
709
589
38
33
998
984
850
277
798
826
951
108
369
221
374
592
175
149
653
314
324
851
117
959
362
16
895
628
947
324
836
201
885
590
652
738
779
412
728
576
150
550
378
990
458
617
202
499
843
100
382
258
760
982
683
259
106
232
495
254
147
913
725
298
69
744
333
227
545
262
170
28
6
532
662
164
285
874
878
197
583
317
816
220
512
371
211
91
665
233
409
164
370
781
276
752
498
187
42
823
709
844
512
577
549
752
525
685
433
186
641
955
348
753
11
755
115
489
842
244
842
408
175
666
792
729
51
948
211
419
465
798
716
844
449
907
295
522
446
692
768
174
958
901
624
407
733
387
969
373
494
922
222
756
43
452
567
423
272
515
914
272
549
174
736
148
859
137
257
436
822
834
196
899
886
871
34
421
561
941
573
762
245
800
535
60
330
96
144
439
868
60
420
800
682
67
625
108
828
702
986
728
75
252
215
303
782
455
365
361
382
80
251
677
713
539
412
191
131
380
6
749
903
26
138
355
634
649
731
351
381
130
163
440
669
394
838
440
770
901
707
399
896
772
224
952
36
8
436
768
428
221
463
285
308
425
911
864
910
556
184
42
349
717
744
490
527
706
267
122
16
768
238
386
34
57
746
307
445
547
720
468
276
480
547
699
830
752
960
905
293
544
5
843
451
806
869
237
644
465
655
423
218
777
974
751
685
121
69
798
799
334
598
32
736
422
754
137
520
916
780
787
546
849
449
694
614
857
298
760
11
418
903
589
990
532
732
779
980
836
736
799
731
837
887
783
280
348
159
35
190
191
914
192
909
161
82
902
806
842
136
731
245
140
686
933
919
777
268
468
573
834
415
544
47
562
184
36
561
876
508
58
262
362
704
973
491
142
988
46
701
354
704
416
523
361
103
263
510
355
259
983
788
860
883
828
765
691
813
38
555
979
142
304
757
378
621
694
820
335
103
614
574
763
16
689
242
639
199
106
801
196
433
76
468
974
63
158
724
312
553
971
919
584
528
507
403
95
41
12
427
843
748
913
337
121
588
615
474
851
794
205
832
253
969
432
539
67
880
722
991
955
187
314
435
243
795
341
171
892
231
108
953
9
862
273
42
200
695
104
893
341
934
176
223
316
424
561
903
60
741
411
961
874
982
265
271
276
255
135
269
542
422
178
740
661
969
866
363
23
691
431
453
137
951
609
179
349
601
42
618
863
334
463
243
751
970
199
217
831
510
177
563
571
360
381
365
732
931
453
935
694
903
257
740
761
166
101
309
453
106
386
213
62
52
116
98
855
9
982
669
735
81
559
762
597
308
133
258
967
758
423
906
696
28
129
788
975
905
331
285
867
238
32
657
385
597
943
458
582
460
159
97
274
303
35
693
683
972
552
475
802
28
516
750
765
286
789
426
890
198
230
41
997
133
788
620
938
938
490
789
809
757
744
61
530
692
931
226
281
834
958
252
358
462
39
490
867
94
633
605
950
547
853
461
651
524
54
508
605
919
908
301
791
607
188
311
32
603
16
578
319
392
240
55
428
445
427
600
118
283
604
240
435
453
937
861
889
159
827
959
938
751
526
534
769
368
89
371
344
255
254
371
256
474
508
947
516
553
376
307
928
588
306
600
303
351
648
901
103
923
326
157
446
760
702
649
678
399
436
987
173
32
339
290
448
245
525
322
462
392
730
228
555
77
81
574
415
48
511
888
458
699
564
968
89
536
746
270
90
110
969
764
679
364
125
196
502
63
933
185
5
909
753
375
370
344
245
380
527
107
4
30
404
51
901
404
292
535
789
858
721
317
161
512
638
389
357
286
803
267
422
126
937
209
617
378
140
18
513
589
406
97
29
578
207
522
838
858
41
575
75
460
201
760
364
917
702
531
798
476
999
823
898
899
839
255
818
695
779
670
362
818
521
59
71
648
166
892
758
790
747
347
870
172
748
13
39
44
32
235
915
913
754
413
959
351
771
957
963
770
728
441
715
628
490
29
418
387
930
66
712
360
294
753
358
574
891
13
493
201
320
327
27
929
117
347
890
69
11
475
682
716
478
406
477
406
991
595
165
783
993
49
340
168
108
343
764
723
981
427
843
698
128
54
555
438
595
821
442
930
176
500
930
392
801
459
975
508
814
107
525
21
701
478
424
696
258
453
7
653
4
566
247
908
616
346
766
107
454
682
803
709
133
295
633
567
537
447
393
587
975
287
506
163
734
238
413
791
366
770
967
399
535
829
418
507
463
542
830
346
898
121
881
377
450
420
634
801
421
975
31
327
960
825
425
581
12
839
62
723
924
184
513
508
822
332
798
438
929
747
731
347
436
511
666
811
995
739
326
979
229
565
490
235
326
199
651
514
125
96
182
56
578
482
128
970
317
685
975
354
479
966
734
112
238
581
969
944
628
687
910
361
477
385
132
40
168
40
791
20
413
120
385
854
80
218
138
665
897
251
762
591
267
833
870
202
747
747
3
21
370
749
608
827
364
73
685
227
836
852
643
659
146
733
722
514
620
909
241
409
952
621
401
376
356
911
122
775
63
939
949
160
245
797
165
661
698
629
460
748
830
660
354
386
444
901
589
718
454
794
369
860
549
998
964
196
148
28
833
576
734
272
819
259
543
370
740
38
138
964
689
465
968
924
409
300
813
784
292
667
654
728
221
927
494
175
678
142
951
639
790
558
711
603
194
369
407
147
877
788
804
404
857
812
340
961
372
863
575
986
489
589
264
406
320
989
523
322
696
931
883
902
758
97
595
703
710
904
749
341
486
536
44
551
351
198
726
997
54
505
481
277
236
33
967
450
658
346
963
167
430
741
222
286
284
224
687
567
124
87
958
504
443
306
776
389
387
825
157
774
420
342
203
969
322
140
930
204
466
211
808
317
808
26
80
438
281
98
551
933
486
682
153
776
400
209
862
3
244
814
276
933
796
523
865
438
696
845
498
239
555
640
147
24
332
305
761
555
180
76
863
669
346
705
631
431
370
946
491
101
242
88
878
84
457
968
388
92
414
348
5
520
137
222
185
867
866
699
928
233
677
549
621
743
520
812
305
93
592
360
567
345
875
471
673
213
983
292
942
560
871
725
372
590
473
104
357
100
26
363
711
166
472
145
457
366
692
347
698
830
116
639
114
310
876
713
558
81
971
180
308
301
77
150
539
606
58
103
86
477
829
125
659
831
442
569
937
584
324
654
629
596
46
585
688
184
879
419
145
153
821
669
530
247
659
209
374
110
728
528
438
262
530
511
676
563
674
35
656
533
593
374
671
356
554
857
568
652
470
404
530
566
987
782
872
292
890
649
188
478
284
366
690
350
583
216
311
69
999
691
539
915
127
214
674
22
42
147
208
127
584
747
271
599
438
945
398
253
835
492
880
158
958
9
589
620
62
77
39
405
819
627
969
258
255
907
866
622
724
624
365
13
927
348
709
280
964
334
720
509
520
57
165
545
830
398
899
215
357
353
784
18
978
224
79
943
585
597
631
154
894
695
878
191
929
522
743
223
342
95
720
192
919
533
999
914
206
700
646
674
525
65
720
506
155
219
382
992
921
189
288
99
382
687
57
998
187
3
706
19
322
776
744
400
908
325
490
703
989
13
758
997
978
127
383
413
332
937
779
378
590
161
999
192
224
979
332
815
511
62
206
476
89
846
892
52
650
940
487
201
272
484
703
114
385
93
92
535
519
791
684
829
177
878
994
918
343
696
492
697
505
586
831
785
560
647
177
632
993
633
62
58
167
511
705
335
993
961
834
863
118
952
252
742
985
477
327
180
467
49
370
194
717
636
763
888
676
837
408
137
596
732
493
561
669
92
760
897
252
834
947
521
987
904
547
767
989
518
587
355
133
21
818
609
201
617
270
316
862
326
473
300
112
886
46
817
233
521
125
817
573
601
224
346
298
656
663
280
435
915
186
110
937
642
949
113
160
544
236
424
703
382
179
644
71
437
164
319
796
155
98
309
130
526
823
716
937
573
665
203
741
849
494
2
106
329
21
812
597
354
835
367
392
212
803
998
83
350
261
493
109
844
373
197
703
356
945
151
45
146
316
413
48
498
543
801
733
144
279
779
762
831
932
294
363
382
547
438
921
768
795
212
884
736
73
72
896
643
230
764
464
489
654
497
388
868
203
652
253
947
425
523
529
84
470
979
700
140
568
201
500
644
35
752
44
657
786
530
552
76
378
501
347
50
177
755
57
488
257
698
148
37
770
165
629
657
389
605
222
182
262
696
920
514
669
625
998
795
4
931
713
962
101
332
209
6
858
777
589
527
643
452
546
772
981
460
175
327
950
761
37
580
997
956
272
234
517
685
195
399
547
131
128
953
230
575
787
382
31
284
70
173
316
727
12
409
622
874
92
609
494
6
164
121
452
277
72
567
620
167
139
496
720
194
190
144
228
536
279
544
306
345
732
251
913
736
995
187
816
904
22
11
284
310
893
710
323
999
208
621
376
662
946
158
260
382
164
624
74
979
685
920
368
43
245
326
892
469
597
729
547
523
810
471
645
848
624
404
47
598
834
448
561
685
426
184
706
821
206
912
857
714
237
950
879
185
66
523
470
709
231
947
95
720
777
597
255
734
626
476
793
525
849
911
806
460
190
468
679
305
24
780
944
848
166
90
760
429
539
260
491
571
807
713
966
684
34
656
441
169
570
236
703
400
182
792
120
214
395
80
537
538
846
897
338
366
764
614
128
430
600
947
688
650
823
108
471
535
394
459
423
239
834
409
834
41
531
707
660
957
830
155
688
975
679
930
754
110
72
576
721
66
481
377
484
490
174
779
605
911
612
321
908
24
586
367
568
97
834
13
584
261
854
721
775
303
874
654
468
341
889
618
112
138
713
821
758
774
349
298
542
753
128
61
528
656
250
540
285
447
33
270
244
525
353
214
530
959
802
305
836
804
763
558
215
153
807
809
528
661
128
282
389
73
939
454
622
101
576
717
116
713
895
956
367
101
703
249
870
975
633
615
183
588
326
831
927
688
46
465
930
974
815
778
132
754
126
388
292
771
657
694
97
455
701
730
780
817
199
896
264
463
844
27
854
383
93
415
836
954
952
507
156
654
539
723
771
42
325
511
717
288
744
175
686
971
675
591
370
972
428
556
248
942
953
642
159
277
524
711
600
150
368
300
988
570
205
164
414
240
504
162
256
286
311
762
156
398
890
365
812
361
358
697
518
343
203
639
495
962
151
51
770
786
38
851
615
370
989
253
401
987
348
343
788
63
109
729
895
68
57
933
880
406
461
703
689
500
742
740
90
384
751
659
838
970
920
696
704
855
469
387
774
993
961
449
536
576
657
242
918
662
482
184
296
622
814
573
827
627
933
902
588
292
733
911
647
89
418
211
906
539
416
657
732
120
611
923
523
751
2
492
479
118
813
943
239
633
188
40
482
239
997
630
49
537
542
467
728
498
300
72
763
410
78
520
511
450
686
660
434
495
239
37
242
159
540
362
860
195
192
911
194
104
832
631
359
578
840
311
901
154
505
86
448
498
993
215
850
343
316
617
166
620
302
488
855
259
781
187
481
221
287
84
380
27
89
741
557
648
796
160
477
124
616
784
599
929
400
959
205
464
283
297
822
108
749
705
996
648
872
471
96
601
600
847
715
198
306
910
656
557
381
124
244
668
312
990
456
633
173
864
150
558
208
183
817
835
434
600
216
311
650
546
458
939
421
499
224
803
602
244
637
23
513
734
300
947
781
24
565
14
269
74
382
611
246
30
662
846
443
959
704
890
396
462
127
855
463
142
585
50
285
498
39
151
145
302
951
439
56
544
790
522
253
217
110
795
418
133
786
215
892
340
805
356
85
792
19
498
265
127
360
265
681
994
490
948
381
569
205
283
362
661
904
470
823
729
590
710
614
328
684
578
560
595
173
205
858
68
589
134
765
401
89
430
668
883
494
68
336
7
649
31
270
827
194
917
875
342
494
80
349
467
32
444
792
152
158
666
740
449
510
840
823
491
976
664
306
71
772
892
937
865
208
122
705
711
549
802
896
675
302
60
432
862
715
451
731
665
636
698
503
376
882
731
770
493
84
783
289
428
434
622
146
266
577
703
132
233
127
609
52
980
133
300
867
725
133
836
407
759
52
942
487
550
882
787
794
428
487
3
542
885
338
369
333
418
140
338
698
15
621
543
448
706
361
69
475
449
170
289
780
252
181
720
368
577
766
721
794
65
90
28
376
376
202
110
945
419
105
915
802
218
670
49
502
145
884
97
54
861
166
344
617
341
468
93
685
376
787
33
464
921
608
312
116
528
29
522
849
451
662
990
125
502
835
766
182
439
947
307
503
132
554
620
313
45
606
767
741
998
445
81
923
921
640
343
677
503
461
870
619
268
303
294
840
731
605
936
647
991
719
411
532
182
961
901
824
825
290
560
951
963
606
146
118
678
299
846
446
830
885
331
654
795
624
418
377
143
661
777
148
194
792
398
468
106
583
973
33
524
658
303
699
968
364
745
152
816
230
499
552
127
717
615
541
724
856
206
816
324
825
312
648
178
683
77
360
122
338
917
130
461
841
394
338
92
715
563
863
169
601
277
773
102
413
199
163
452
392
476
609
654
572
263
623
302
549
698
373
551
700
618
76
829
240
151
332
438
232
674
527
972
586
828
601
889
622
502
380
340
659
309
825
961
321
794
512
158
524
771
766
216
161
197
629
202
919
493
891
9
610
949
894
318
468
370
693
164
149
817
898
59
854
298
619
416
464
310
975
808
859
917
235
331
346
28
283
502
174
349
34
242
673
289
499
827
823
927
80
684
114
802
866
829
664
960
773
260
268
632
355
196
733
347
646
47
525
599
904
367
743
992
153
496
841
151
918
979
763
255
715
651
858
125
4
323
278
271
212
922
584
679
805
214
688
923
933
517
602
248
848
619
577
830
683
545
339
870
631
993
792
526
671
176
599
755
910
691
431
387
596
92
429
288
159
141
959
95
808
938
934
49
314
166
288
707
724
336
738
477
813
384
348
457
812
592
439
908
88
331
48
253
949
395
520
165
224
571
931
723
641
790
426
927
104
384
537
158
295
905
550
388
954
552
110
182
359
690
117
243
223
623
503
385
445
698
926
752
929
895
434
690
880
999
409
580
35
621
311
654
50
60
611
569
664
47
685
479
590
281
102
741
121
925
353
897
939
127
196
467
15
20
293
826
273
276
72
598
732
942
441
553
255
939
47
541
827
840
738
157
855
923
279
748
709
557
343
467
322
310
378
760
310
652
881
898
203
416
674
476
66
340
323
282
854
343
854
670
231
923
88
833
233
911
500
557
608
456
491
546
678
6
411
950
210
746
255
901
21
187
796
702
529
327
363
901
953
178
191
321
506
879
796
180
109
258
261
998
878
738
128
353
885
884
193
110
95
401
282
644
142
297
468
739
75
579
371
276
368
668
840
530
299
350
438
119
301
849
424
162
54
634
17
367
358
941
895
705
756
206
782
641
511
470
905
666
80
56
815
290
521
466
583
707
260
385
90
586
886
33
413
937
304
655
918
711
874
988
552
201
837
75
336
553
920
246
386
112
542
529
320
197
594
231
340
633
134
854
994
234
867
450
577
577
534
272
108
327
341
979
257
296
689
891
452
988
470
802
803
950
909
663
853
62
473
748
711
931
77
99
768
78
855
865
660
779
841
621
613
347
235
308
55
357
475
139
264
666
281
74
390
554
303
373
616
165
437
473
203
175
463
122
499
535
464
82
934
745
239
78
140
173
25
961
674
310
925
704
546
185
497
942
759
301
384
987
824
299
442
678
372
217
151
858
138
660
85
304
716
900
703
988
520
69
126
888
100
205
514
742
181
611
675
442
945
200
377
952
341
88
24
154
89
298
718
56
455
923
390
168
898
266
468
606
783
863
163
324
986
148
673
852
569
645
409
480
129
504
882
971
158
139
652
650
12
563
874
334
842
780
839
574
421
180
787
391
4
143
912
489
301
416
304
624
152
821
384
872
386
791
522
568
751
621
394
499
983
742
222
147
512
468
163
940
823
354
734
40
826
768
742
564
457
787
792
988
767
896
440
857
665
405
810
762
513
666
182
82
150
115
935
635
572
726
457
468
786
833
528
454
590
117
340
406
944
727
462
753
689
951
126
822
466
172
277
339
153
479
382
163
327
628
529
572
253
396
903
712
975
266
336
616
508
552
260
672
887
55
263
563
698
243
796
91
29
801
68
816
290
272
378
690
442
854
929
530
644
79
429
607
869
192
381
869
408
778
310
596
329
662
654
50
321
43
826
43
349
994
71
92
154
969
638
909
792
515
204
765
663
341
359
184
48
269
981
341
661
797
140
270
314
810
64
7
448
542
37
181
636
182
489
875
534
971
266
87
558
999
121
256
305
588
237
301
364
675
483
93
570
969
475
275
118
377
361
478
809
120
818
571
787
354
288
602
619
336
607
780
734
241
368
362
612
837
96
14
459
596
438
571
596
424
6
31
451
206
783
213
784
111
906
542
655
534
773
8
347
482
662
62
948
704
386
865
646
224
130
874
166
599
398
711
844
483
615
521
386
313
689
618
475
684
846
855
344
474
763
747
610
12
855
162
21
697
287
391
966
69
645
572
799
227
119
972
541
359
561
706
838
788
486
300
661
700
325
655
748
788
224
716
879
288
614
536
578
739
749
707
12
831
636
848
158
237
576
432
883
608
256
927
721
275
882
658
655
520
145
17
834
874
930
879
94
790
691
274
674
766
514
390
185
208
681
100
229
819
159
251
462
259
437
858
161
183
450
493
839
353
26
337
760
472
620
702
270
616
861
446
640
798
772
914
98
514
922
182
384
710
447
47
350
899
80
876
643
169
93
927
610
264
734
498
769
425
378
134
209
960
525
440
522
822
688
575
121
710
565
108
8
300
462
589
446
633
475
703
277
754
906
960
664
751
294
747
392
485
387
797
762
995
771
977
415
257
577
423
564
310
23
999
519
468
882
512
36
535
856
909
329
810
769
34
3
667
997
790
72
290
541
767
537
172
136
626
837
689
996
481
940
353
899
114
266
412
119
440
696
478
433
118
558
66
517
362
917
746
727
725
42
735
357
593
386
590
48
688
46
642
390
76
998
333
791
308
852
671
643
809
979
694
23
344
867
485
304
161
173
132
355
8
966
752
541
843
451
276
16
641
764
517
941
946
946
907
485
291
564
668
895
769
546
11
279
419
188
20
541
971
134
982
267
910
975
666
849
386
219
50
830
533
932
422
403
522
233
950
68
119
6
982
903
347
399
88
969
801
810
72
461
452
692
498
660
250
623
240
553
891
482
414
95
730
696
262
768
275
573
327
192
298
28
940
249
943
142
67
306
244
613
230
87
314
827
763
488
371
881
121
511
716
292
36
508
885
743
430
790
566
613
922
477
80
963
260
566
459
333
24
306
819
151
314
652
380
813
710
806
302
412
650
129
216
11
748
764
237
283
808
940
557
453
828
874
382
232
535
112
730
323
786
763
65
957
722
525
256
526
765
217
909
611
99
673
82
162
901
381
60
261
589
166
907
359
164
933
964
969
992
894
955
554
913
983
500
226
878
225
57
515
370
193
467
319
348
20
874
280
987
89
443
318
412
984
977
667
893
474
951
124
964
559
201
216
85
586
82
925
22
540
341
791
899
116
319
894
776
766
38
137
397
933
739
362
401
424
709
808
386
606
212
123
985
984
541
638
588
700
492
68
487
780
792
225
484
699
281
23
229
195
496
646
627
973
526
34
324
30
175
530
305
211
275
524
28
421
587
474
38
410
179
788
960
880
594
663
205
565
691
188
211
612
211
438
246
27
592
365
507
203
333
607
790
496
310
941
891
351
975
651
312
425
555
327
878
336
609
386
682
674
622
289
585
287
118
653
863
890
694
163
85
439
127
427
442
51
446
727
886
882
569
34
491
576
752
204
963
430
394
506
977
381
345
865
259
387
315
359
971
963
369
278
127
551
768
620
602
185
135
647
931
292
626
853
181
643
155
607
878
288
267
38
72
304
627
680
494
835
565
920
704
692
40
569
983
276
688
406
236
339
429
912
408
221
591
978
556
290
655
368
388
186
925
6
260
942
245
953
982
664
776
686
89
151
823
130
459
436
780
324
812
372
834
659
62
279
231
485
815
607
430
339
355
209
740
152
100
857
86
891
710
439
879
211
193
200
19
913
396
82
765
629
78
833
433
24
83
900
646
360
962
403
611
187
455
247
789
976
205
24
905
342
842
501
670
469
683
307
859
991
884
803
674
391
798
770
27
970
203
274
336
798
569
743
179
233
290
501
901
643
750
803
736
750
483
875
419
110
564
513
579
739
523
541
367
955
677
218
427
453
321
535
702
432
714
696
785
809
759
625
661
432
881
372
144
85
518
160
567
235
92
732
370
582
512
437
621
249
46
159
107
850
564
5
123
681
325
565
508
268
352
701
735
303
299
660
254
965
595
7
99
780
884
484
585
806
558
533
81
290
353
240
489
492
396
693
647
686
519
287
681
591
721
403
13
826
99
94
345
430
36
156
790
952
383
566
531
84
31
238
865
948
410
100
682
315
644
245
838
863
371
545
262
946
263
800
256
986
346
814
291
392
840
340
517
380
346
473
864
881
679
164
105
282
529
664
433
803
86
624
492
329
128
56
152
458
943
668
818
205
148
226
445
870
932
233
863
325
449
688
183
169
605
183
828
529
414
855
748
320
74
730
681
560
2
239
165
680
999
181
414
558
66
554
922
824
130
635
553
23
928
381
760
503
901
858
620
659
149
644
673
854
671
886
676
806
830
184
613
904
783
183
358
161
261
365
994
613
365
152
335
486
133
130
894
747
228
293
696
507
583
934
794
639
573
799
732
424
312
199
305
108
575
23
886
714
582
14
247
809
689
250
278
20
294
657
632
832
771
329
152
688
394
52
923
664
450
169
10
224
891
875
254
902
397
355
464
978
490
507
847
551
999
773
531
793
576
966
67
58
604
598
646
650
437
130
241
859
175
428
70
359
952
665
818
522
402
223
959
813
63
952
66
172
614
638
492
821
20
148
209
7
64
196
653
602
774
558
321
94
773
862
293
224
577
797
881
678
31
424
769
130
344
263
974
988
823
894
381
554
334
666
117
690
501
61
779
467
927
110
773
20
10
763
213
521
204
884
909
715
814
45
131
558
398
591
943
627
775
667
261
498
686
767
367
407
454
694
942
990
328
587
682
924
753
976
966
864
676
555
427
183
999
126
929
322
791
466
563
499
210
464
31
395
981
903
716
57
265
106
458
364
69
135
478
629
810
131
326
893
46
52
234
318
669
422
376
935
684
483
327
779
108
359
668
653
134
910
768
966
704
282
772
258
515
237
260
245
730
955
356
992
234
400
36
480
317
594
785
903
388
929
268
738
587
339
248
320
631
936
129
345
505
280
298
948
748
645
829
968
56
76
803
491
768
148
902
852
940
423
146
661
369
409
703
945
362
459
10
50
598
662
964
934
875
888
537
234
117
637
89
386
354
29
576
932
959
641
712
604
120
550
727
784
394
488
630
728
32
635
897
336
193
50
34
633
930
373
609
9
197
725
234
786
235
44
177
103
648
517
990
297
499
824
215
288
87
585
678
903
971
721
636
848
583
694
555
626
708
97
916
468
225
574
232
569
658
19
130
564
409
182
745
385
904
810
798
2
915
774
81
301
821
263
875
276
984
288
632
155
581
423
353
669
860
329
192
657
17
284
144
372
394
589
131
595
554
891
530
923
653
360
4
869
689
296
915
704
787
355
394
678
912
379
145
82
973
654
865
790
843
82
905
693
394
61
94
634
132
397
789
551
856
13
107
213
152
527
951
380
257
539
774
292
244
225
4
982
505
116
441
264
477
822
381
791
822
87
533
847
8
47
798
2
789
518
561
979
222
990
254
741
794
250
290
72
46
295
591
397
557
856
956
135
337
397
678
982
889
761
667
682
745
662
466
382
76
681
584
592
250
327
475
49
666
537
66
887
802
546
980
767
258
858
929
275
447
714
824
730
975
155
457
125
921
524
595
676
71
74
719
97
248
472
207
14
440
355
643
10
989
96
684
154
466
37
657
661
425
313
262
478
312
796
457
936
282
545
164
68
193
339
95
550
156
187
823
710
941
569
516
474
536
563
943
29
433
152
781
984
580
942
951
405
155
35
479
924
120
767
557
908
347
337
846
650
77
744
532
51
528
161
694
793
323
619
216
849
6
927
709
935
574
842
672
192
748
969
855
235
57
871
77
952
861
349
472
513
67
784
200
841
785
684
158
268
474
351
538
564
482
571
790
289
486
117
847
528
466
139
266
324
711
35
635
50
272
320
48
754
373
146
568
144
154
900
975
407
468
561
587
769
988
215
712
499
435
202
183
576
932
955
468
539
814
426
122
128
880
732
363
532
971
200
493
992
957
632
303
611
828
788
290
762
978
92
492
765
141
519
15
84
493
538
268
888
768
431
234
245
514
3
681
440
622
606
551
294
169
516
615
597
835
22
697
243
232
470
828
327
833
268
426
554
869
990
461
256
9
697
505
294
541
835
983
647
819
662
921
15
949
429
857
722
141
620
513
451
59
533
488
733
349
231
104
654
914
788
372
648
274
257
252
10
672
505
40
45
502
238
566
70
443
582
958
285
64
917
128
685
373
124
600
554
837
490
660
481
431
113
733
759
472
921
982
16
739
915
642
752
377
829
814
459
882
257
833
160
587
821
368
875
728
310
700
491
751
961
218
871
865
108
392
858
137
383
86
605
471
675
320
367
888
831
275
366
582
711
885
606
424
305
420
80
756
655
27
53
546
18
761
661
754
786
767
633
893
540
331
637
405
926
36
128
469
862
37
279
272
461
544
354
283
761
930
38
918
781
787
461
131
376
709
648
948
531
121
85
65
182
942
791
637
522
404
72
264
189
533
603
510
968
89
963
18
640
326
126
697
758
938
406
567
476
865
729
421
122
131
12
981
196
807
124
687
634
386
412
472
700
241
10
193
464
405
409
256
784
988
781
200
180
76
429
993
456
141
688
7
497
462
856
428
604
334
906
719
700
102
734
665
581
592
42
175
131
753
668
870
817
476
878
90
114
897
861
488
631
431
47
356
897
211
596
949
75
981
91
496
113
156
65
214
604
919
620
695
445
333
175
686
663
624
459
571
475
158
852
843
799
692
960
505
965
757
768
697
212
712
108
207
809
441
693
377
251
650
938
630
867
392
715
924
333
331
80
372
424
543
856
185
930
229
686
648
650
199
941
606
888
172
136
891
619
769
899
977
364
68
387
643
620
650
330
250
591
102
991
630
848
441
684
250
773
415
794
704
985
725
530
545
306
318
628
320
135
562
698
948
660
954
532
94
778
962
824
511
858
951
736
828
982
570
722
217
175
204
469
848
448
23
32
382
412
683
973
775
477
10
983
601
690
106
454
928
797
171
493
123
837
322
535
436
564
441
5
414
603
325
754
66
114
633
542
361
262
315
672
557
526
231
163
263
280
107
948
842
275
261
602
86
850
77
191
755
627
66
454
112
802
17
371
683
817
209
3
798
786
690
673
987
278
899
683
125
593
648
479
878
326
32
332
43
177
610
80
186
873
412
509
338
81
297
324
505
766
850
403
922
18
55
386
39
922
265
902
55
589
837
278
274
176
996
663
315
664
685
427
575
94
698
404
348
527
665
449
770
194
786
602
170
39
490
12
119
486
231
473
971
334
861
723
605
987
395
294
898
927
127
703
387
157
414
73
291
742
983
708
400
948
877
240
670
147
196
786
532
76
652
665
527
876
738
484
215
224
348
347
215
283
415
667
918
540
286
468
274
54
72
46
497
394
605
994
630
574
382
311
345
380
303
41
386
816
831
985
191
658
667
362
427
199
733
549
368
944
948
952
720
362
604
564
721
417
366
655
905
617
253
338
697
41
795
62
818
232
218
290
90
265
250
53
619
905
833
909
214
23
114
93
14
941
32
700
761
200
476
85
916
844
874
201
816
440
601
191
970
637
509
410
326
700
732
905
949
224
502
513
794
697
801
991
668
601
782
811
414
388
888
496
826
679
422
597
104
740
788
408
45
257
489
220
328
924
71
359
118
924
284
30
550
796
296
909
732
699
717
125
917
415
494
180
596
794
134
661
26
333
125
43
178
256
678
26
524
299
758
437
580
719
657
527
769
473
213
632
399
513
670
452
157
998
77
723
463
273
210
814
155
394
24
567
87
399
594
617
175
836
169
132
912
31
359
515
292
288
320
250
613
178
953
198
820
486
147
189
792
702
92
780
137
967
664
75
587
526
723
438
780
872
685
984
952
424
596
385
991
176
187
767
867
572
328
780
192
449
82
115
870
999
757
3
416
490
973
966
237
19
342
398
165
210
611
627
348
631
289
230
581
595
521
862
435
606
432
544
971
862
98
444
104
49
134
810
624
279
548
779
392
564
879
25
153
30
590
726
800
227
136
160
415
886
986
547
549
989
358
526
917
924
728
72
584
933
546
148
420
685
142
690
376
760
737
77
571
616
955
282
488
918
225
845
110
670
191
963
778
362
655
740
841
336
879
220
656
109
747
10
790
384
291
80
256
815
867
527
864
743
623
395
957
254
225
119
786
869
79
466
694
433
155
698
957
612
76
228
47
672
67
993
385
748
938
814
27
744
100
535
568
149
527
116
533
670
963
282
598
929
106
168
397
225
623
811
551
306
516
815
134
828
159
322
8
471
380
729
877
309
47
28
35
238
117
177
568
456
510
477
965
16
218
796
415
505
894
304
275
485
745
511
813
736
15
702
736
467
606
776
831
313
990
455
493
515
586
54
419
413
478
653
560
976
557
666
581
484
629
813
638
758
340
364
456
904
286
248
412
850
714
383
478
215
667
93
551
488
495
22
781
32
284
681
404
936
15
854
695
978
241
411
586
73
318
859
402
502
212
969
330
648
529
248
641
166
963
204
57
381
977
478
659
660
533
963
630
756
12
128
551
475
614
107
180
288
301
315
537
593
148
990
362
52
358
785
639
227
836
837
742
814
79
123
924
732
860
338
467
667
719
567
751
684
311
925
436
633
543
536
59
792
934
485
321
102
604
332
593
385
905
408
779
453
346
584
573
344
405
291
187
502
411
266
563
573
249
321
324
553
278
757
279
810
789
864
322
925
568
314
294
358
533
763
625
169
104
768
274
457
212
234
709
820
685
901
62
412
415
467
821
539
52
427
618
420
306
120
695
699
639
417
732
303
292
494
97
589
565
452
218
375
862
604
231
249
861
894
289
613
888
51
430
447
964
372
435
238
484
850
934
696
765
88
569
115
444
199
442
374
836
103
199
556
829
553
55
156
628
549
359
992
652
929
198
748
82
580
960
311
871
136
156
923
438
78
417
981
658
366
561
184
371
923
35
951
805
203
198
127
885
598
275
232
948
722
417
263
306
813
364
59
31
499
367
780
360
363
493
210
276
426
427
749
747
88
559
433
674
841
539
350
690
683
745
677
474
426
685
616
81
852
643
780
516
946
625
464
98
135
139
400
752
856
772
58
738
437
620
179
789
525
133
815
252
424
451
73
602
369
700
217
432
790
192
598
217
299
601
460
320
553
626
816
818
298
14
300
318
485
965
934
971
939
787
369
762
580
287
845
841
698
570
973
521
420
564
579
643
999
303
426
232
848
907
942
545
530
474
266
844
609
347
630
243
12
920
92
313
447
629
979
926
313
105
625
66
979
860
666
454
731
115
947
790
22
559
575
77
453
994
672
886
231
810
439
183
855
393
402
747
875
944
537
211
669
368
319
542
262
125
325
584
958
15
825
144
750
505
693
485
541
522
876
35
678
246
683
663
819
775
195
578
58
595
291
401
337
189
941
617
797
864
441
237
466
836
427
94
254
62
409
618
774
702
53
207
325
677
163
313
263
156
662
687
846
479
498
400
420
437
367
59
550
407
537
496
348
815
250
505
49
552
315
744
995
769
148
650
465
119
644
346
210
482
695
620
848
149
800
691
759
632
431
236
268
555
603
521
505
169
339
398
528
590
286
595
885
346
600
911
74
849
205
281
970
915
878
847
668
675
585
159
547
306
580
506
243
326
658
57
330
666
60
854
199
161
917
377
364
542
903
956
16
416
850
146
303
339
658
357
240
849
499
26
944
534
836
46
265
932
586
431
4
317
434
202
519
256
314
61
443
566
12
182
169
917
762
10
438
495
43
62
209
727
911
600
318
313
683
39
552
172
566
842
63
650
897
98
187
928
464
273
541
186
338
405
313
699
222
174
838
935
881
589
742
138
799
776
790
614
555
706
793
355
358
24
960
671
958
867
894
662
448
957
301
958
802
78
766
732
239
175
669
254
695
119
65
322
594
528
35
310
245
40
548
591
610
342
292
375
358
605
336
377
313
909
581
510
989
168
788
302
27
497
887
947
208
360
937
358
342
606
843
414
883
450
296
833
390
143
685
498
541
355
538
41
129
651
605
821
126
940
238
895
464
245
334
532
730
281
523
964
755
492
817
62
596
440
902
962
219
189
958
633
234
141
981
864
857
700
797
265
473
61
914
62
177
494
490
313
165
401
767
261
23
284
944
559
739
603
858
602
942
975
186
390
810
926
492
196
31
153
926
994
743
329
998
551
830
999
63
718
616
403
889
833
244
248
512
838
328
785
589
799
245
797
342
648
703
399
715
910
497
111
526
804
779
150
625
344
218
488
912
474
450
704
207
86
333
931
956
630
595
678
893
588
325
822
120
342
787
652
317
179
55
552
3
850
275
136
523
305
362
438
938
201
445
841
237
894
585
457
487
768
767
997
357
574
923
637
613
428
97
965
431
581
341
537
749
210
422
181
912
579
407
693
539
403
180
300
293
698
792
859
971
83
801
995
472
213
291
152
631
384
230
33
803
58
847
177
134
647
959
42
310
226
181
903
693
774
897
23
477
376
530
111
482
285
976
313
10
939
912
697
788
668
981
563
41
860
947
496
130
634
529
184
286
654
277
345
829
736
987
779
531
666
164
142
394
63
611
354
708
506
975
474
491
359
15
837
896
52
649
762
222
583
485
473
746
568
774
389
394
804
128
164
52
274
57
755
605
816
758
394
686
913
620
39
147
393
861
608
824
710
910
355
469
476
945
211
378
424
558
593
590
983
287
731
673
10
575
500
668
132
164
134
817
115
662
750
782
864
621
433
513
487
422
859
283
517
426
301
217
364
17
302
929
175
278
8
516
447
619
851
586
661
697
60
526
937
125
127
225
704
272
251
884
238
113
91
434
241
235
131
669
845
107
544
266
99
773
137
582
680
831
439
33
911
121
13
288
765
260
904
186
202
581
750
198
637
90
140
880
249
926
442
629
936
208
880
690
557
384
444
245
968
429
774
773
940
579
853
182
702
420
847
988
262
20
391
711
651
286
622
752
54
346
52
801
529
240
218
8
360
412
631
536
386
612
512
932
35
300
350
383
756
670
544
578
584
969
604
480
502
548
38
265
765
485
555
677
663
752
903
881
814
420
196
537
313
207
27
301
876
189
462
278
253
321
557
260
646
403
785
371
479
386
135
5
349
106
855
257
435
166
244
101
438
584
274
634
927
413
256
61
989
511
63
382
474
109
366
913
237
169
204
547
115
820
175
978
283
668
177
509
112
18
815
660
305
665
981
429
650
612
868
874
893
767
55
696
220
195
111
258
239
14
493
782
396
638
343
231
731
33
849
479
732
709
667
547
434
662
749
295
972
688
726
434
525
452
833
647
198
184
340
407
199
812
294
420
165
813
917
337
187
694
324
621
570
916
103
251
920
409
384
121
461
854
754
573
773
216
856
599
254
964
669
576
468
89
240
619
358
982
102
95
742
684
924
939
248
770
117
234
884
478
712
100
798
49
991
387
350
597
701
974
46
714
311
80
924
544
120
513
952
996
603
325
989
544
321
262
878
277
81
775
327
304
293
166
416
775
370
114
202
625
681
672
729
265
294
589
529
709
996
399
520
261
385
863
84
156
330
236
615
400
568
222
420
395
268
995
544
419
986
61
623
98
489
840
414
566
667
505
97
845
764
706
298
656
367
13
549
598
362
360
165
737
931
318
261
317
325
363
395
47
549
950
296
503
343
794
142
936
754
904
727
763
553
893
625
915
282
713
51
551
46
515
215
217
431
467
210
279
26
202
9
27
393
572
158
634
14
38
144
989
369
54
111
87
499
503
754
988
507
503
795
839
782
68
94
531
957
174
979
365
845
886
891
346
902
255
504
795
549
872
437
307
632
484
902
325
327
390
662
812
788
816
966
176
140
111
533
100
444
238
693
694
691
383
194
771
82
290
200
476
538
68
271
951
467
940
584
823
113
549
140
421
989
926
312
242
267
933
698
272
312
851
625
207
266
508
557
826
936
250
415
712
606
934
102
861
853
259
159
566
362
409
849
869
958
474
256
795
354
491
991
690
859
222
660
764
656
929
773
678
747
498
624
519
10
237
604
991
75
786
98
805
708
874
467
501
527
992
924
13
2
545
368
352
211
81
111
146
795
262
309
372
203
454
680
626
872
417
706
900
667
342
202
262
210
34
26
28
623
694
969
655
997
824
97
734
329
731
315
431
73
823
135
667
276
575
471
410
686
266
502
80
159
662
232
548
253
626
687
25
917
528
235
540
342
37
597
468
787
409
951
50
968
524
200
838
233
272
186
971
636
347
453
949
848
799
393
774
699
127
819
660
404
372
824
175
756
996
380
920
179
550
850
181
122
77
367
522
800
323
491
229
890
293
403
92
564
116
680
960
226
48
658
34
89
273
244
886
976
815
714
766
308
192
249
106
832
27
529
282
781
700
877
261
300
982
495
761
85
406
214
94
400
933
287
307
813
408
190
636
944
149
255
581
530
528
850
381
451
291
57
113
940
11
683
455
408
855
400
618
600
181
435
662
860
100
898
232
81
920
91
762
416
193
658
838
507
641
429
82
579
535
219
205
353
971
815
839
193
608
148
231
528
350
814
534
138
760
45
396
676
565
547
338
80
583
725
784
65
740
620
561
705
538
20
98
784
801
69
793
750
410
544
820
232
753
7
7
521
188
143
201
523
100
752
230
117
189
944
14
571
349
26
230
247
342
78
180
780
765
330
665
685
74
206
535
702
534
453
628
621
553
28
150
459
866
861
585
996
274
696
315
355
996
172
285
848
209
491
244
743
874
562
37
2
276
613
400
662
913
546
450
120
452
410
645
595
472
304
303
731
987
975
872
103
499
63
547
361
135
549
860
849
862
986
776
857
96
239
910
172
2
27
613
595
162
845
586
299
658
277
910
722
935
514
100
93
568
581
807
178
687
180
147
130
216
443
154
401
299
137
85
604
549
836
460
324
105
201
917
211
794
221
661
162
146
500
387
827
972
41
950
239
918
927
439
569
328
179
526
98
532
347
780
634
286
944
46
275
709
376
895
818
258
2
400
149
692
650
771
465
256
117
492
854
996
326
900
40
610
952
158
580
547
736
525
88
157
859
409
443
842
83
955
505
229
703
947
643
951
978
178
512
614
709
179
328
461
775
878
89
567
493
357
556
701
562
514
694
570
282
642
745
250
36
157
688
626
813
484
447
348
977
710
177
303
491
869
550
825
898
408
205
840
104
787
481
939
539
21
713
94
505
206
64
645
591
805
877
872
189
929
93
671
780
273
72
603
672
619
345
733
317
533
185
943
130
945
482
534
210
994
359
522
252
778
377
21
356
250
723
769
767
771
598
87
21
725
169
946
590
121
149
87
527
884
852
601
875
630
140
571
294
863
877
527
875
472
216
635
391
584
926
867
577
408
270
567
594
919
763
235
653
565
924
800
776
115
303
104
994
564
647
699
840
178
703
331
927
511
706
146
421
107
954
682
416
804
531
987
72
82
817
755
11
337
679
32
930
593
542
4
590
245
645
577
13
925
634
44
441
654
226
907
694
989
873
805
338
43
324
822
449
528
949
87
67
333
650
109
144
440
987
807
646
891
541
83
20
370
261
285
811
122
292
913
33
185
307
530
842
407
675
364
214
359
786
571
763
988
99
547
869
786
786
498
693
493
606
274
606
14
872
983
226
36
813
237
649
356
888
817
312
642
39
172
726
458
656
146
59
27
27
687
959
221
28
279
541
981
505
131
871
743
807
533
733
24
781
980
202
193
459
362
417
526
697
608
747
475
624
451
451
451
717
941
143
389
964
110
694
142
813
34
741
821
340
728
117
748
887
307
91
908
800
177
846
683
2
860
129
659
912
800
470
405
494
596
652
350
849
791
246
278
340
557
775
918
313
608
143
82
325
303
938
838
531
392
44
683
240
755
247
67
352
512
756
469
601
974
920
956
843
917
370
727
957
804
802
401
692
453
994
401
515
407
494
154
185
613
486
589
664
933
242
174
690
978
769
695
3
382
934
37
765
128
872
481
387
419
331
87
378
498
724
584
325
928
222
577
342
380
636
992
245
363
17
948
992
229
20
508
2
282
287
654
918
806
268
653
502
775
497
6
8
226
511
169
827
836
235
461
352
647
720
385
625
803
937
596
751
79
792
364
131
28
565
727
626
265
666
487
786
491
895
753
602
585
153
106
952
634
796
79
231
440
731
69
730
396
962
20
567
790
708
737
874
80
399
708
9
594
263
598
711
391
579
478
575
478
337
224
25
773
439
979
864
546
637
520
273
591
855
411
988
106
669
879
114
689
595
663
690
817
262
555
78
415
739
874
100
729
962
801
637
14
65
189
78
842
288
343
637
799
70
433
543
496
363
719
417
186
218
514
464
52
724
957
559
908
795
592
689
938
559
19
759
918
125
935
790
930
43
34
316
461
631
223
139
526
170
401
969
424
184
340
237
421
311
797
571
411
837
409
614
358
990
708
526
648
959
135
808
134
939
475
822
566
990
333
307
495
784
489
578
620
599
612
856
106
605
435
96
633
551
198
689
461
829
469
774
214
95
441
152
265
945
786
926
204
479
421
285
58
180
791
956
854
213
707
456
364
280
895
149
51
914
504
874
979
188
664
532
97
357
59
669
210
398
406
109
266
652
369
516
529
124
295
493
607
54
522
130
25
878
314
620
120
503
823
540
503
614
286
211
895
757
862
732
967
871
972
527
730
304
45
441
249
54
11
618
286
13
995
702
947
742
630
808
395
697
586
661
423
119
675
368
360
140
415
435
68
742
381
555
394
244
746
125
841
626
890
83
962
686
598
946
684
443
708
798
942
278
775
11
395
613
667
281
611
429
764
480
865
26
978
355
160
561
931
147
968
17
444
668
401
812
740
987
944
398
354
950
105
613
185
734
303
993
849
357
623
874
650
224
813
167
854
526
247
984
107
306
417
160
918
160
98
540
731
115
322
226
334
399
270
850
400
529
303
536
861
714
647
361
381
10
186
122
336
319
76
279
423
672
78
693
164
553
269
993
798
539
140
644
451
459
434
419
241
443
312
70
731
15
488
650
307
841
389
726
370
667
697
472
334
493
159
861
835
787
10
152
485
999
575
306
272
654
147
185
373
763
498
590
609
668
519
641
986
675
223
739
104
163
582
525
926
663
754
411
254
233
350
333
88
423
382
547
619
419
711
739
364
66
635
77
989
116
832
910
304
5
144
229
281
729
350
991
871
182
853
346
683
669
912
653
976
174
726
745
278
85
731
844
352
46
368
420
316
185
800
276
766
766
581
902
410
702
507
883
826
119
745
76
723
101
214
24
17
583
58
727
335
560
717
587
590
813
233
38
910
854
517
197
236
880
556
136
756
430
823
893
450
165
375
344
617
7
677
358
165
172
55
567
908
589
965
464
183
807
520
96
867
559
407
349
640
132
397
635
186
275
354
5
38
331
847
622
960
455
719
646
317
347
556
207
769
179
824
769
302
318
600
976
962
851
19
100
585
249
578
237
437
171
706
90
160
143
821
503
322
500
865
318
708
745
348
615
554
805
149
811
932
923
444
422
490
572
480
297
778
281
263
755
16
979
661
279
906
558
623
923
706
735
494
712
499
524
894
343
143
571
49
700
278
958
684
727
746
621
620
921
946
456
905
811
462
23
150
114
655
958
219
934
860
267
665
370
294
451
386
237
542
585
5
819
60
833
438
102
275
991
295
644
617
500
967
452
924
292
380
100
495
744
452
304
692
404
710
312
394
267
847
184
271
293
471
907
736
678
589
420
78
711
611
527
924
119
45
806
24
534
912
194
770
318
590
60
13
58
803
246
226
126
992
972
682
220
602
365
812
785
452
613
395
608
703
95
781
788
696
110
412
611
690
355
76
965
954
986
254
310
479
711
889
236
326
673
886
890
639
734
111
846
281
329
237
468
889
58
459
328
258
277
808
768
699
122
390
848
160
821
863
791
709
730
156
670
122
560
103
613
60
255
880
319
541
331
493
495
817
453
980
444
747
605
47
976
814
352
887
541
905
943
919
438
898
912
510
172
225
801
788
783
424
512
470
876
419
74
395
697
887
194
898
951
851
91
537
412
633
601
537
568
89
492
834
140
806
254
948
883
834
677
184
167
589
889
431
343
391
121
422
11
538
724
282
183
424
563
332
797
525
71
180
298
766
196
96
789
408
19
384
865
736
403
274
772
844
524
787
309
434
946
213
16
681
506
281
788
742
795
171
624
477
427
722
969
720
940
980
38
396
562
52
920
555
223
255
978
328
527
413
523
18
739
110
235
804
918
235
239
134
859
389
328
694
555
569
837
339
505
106
863
583
491
982
532
532
489
978
903
346
470
300
261
867
75
109
932
372
824
265
308
734
379
247
850
772
755
778
759
310
844
319
832
6
191
608
361
342
606
147
669
365
760
307
335
540
976
769
258
31
449
155
921
566
192
534
761
311
915
597
904
852
754
129
289
220
351
797
849
523
123
803
280
977
981
365
119
508
704
169
266
390
656
979
872
842
703
790
826
350
935
34
432
625
629
914
109
688
600
335
274
190
622
69
389
170
611
920
832
796
297
833
602
613
396
186
868
752
854
420
706
319
370
299
958
444
451
969
990
955
238
638
833
545
260
74
532
91
723
286
519
528
807
202
623
305
15
508
920
672
603
755
412
466
16
210
85
655
550
766
445
972
520
114
517
484
827
464
969
643
710
441
188
16
588
734
910
154
568
328
607
481
813
764
339
296
423
858
30
990
291
519
558
702
423
325
64
115
709
624
991
546
17
868
134
160
685
547
453
968
812
818
701
286
971
385
836
4
561
667
221
544
733
448
745
439
452
827
483
591
690
377
108
759
753
846
976
519
662
578
762
611
487
648
57
570
513
884
913
807
429
606
307
279
288
966
140
904
60
134
511
985
149
819
964
119
757
47
360
489
747
767
25
699
453
95
186
554
782
429
137
897
527
406
691
391
307
547
18
504
965
136
618
337
128
804
28
283
507
908
784
460
679
725
284
888
20
30
800
395
951
774
758
222
16
122
404
897
855
41
675
515
164
662
345
890
895
107
681
628
415
12
173
57
590
380
556
644
433
166
995
830
92
782
243
673
815
364
566
466
666
879
428
130
108
221
911
646
671
72
171
430
71
438
684
256
353
135
92
904
395
632
77
890
251
911
75
219
732
840
882
514
852
864
895
917
375
408
521
448
791
132
502
524
658
638
493
560
721
249
10
770
13
149
679
472
169
869
393
373
880
591
545
339
757
833
930
96
605
300
993
305
459
192
988
164
183
457
401
831
887
981
544
996
305
243
734
28
995
466
459
952
788
165
182
817
749
804
773
807
182
661
785
348
443
978
69
132
190
945
975
704
674
243
271
691
628
580
349
498
993
178
113
100
119
299
926
260
82
248
839
473
890
773
843
49
313
465
663
385
269
270
584
581
235
335
906
426
827
852
870
922
530
830
655
22
359
309
32
107
523
78
292
362
483
844
890
511
964
675
555
341
346
469
799
183
869
836
395
360
707
609
212
925
670
265
802
899
82
669
423
356
860
68
893
195
425
590
510
650
96
773
57
844
329
297
41
399
996
462
283
828
510
265
382
345
535
542
341
979
409
326
165
267
828
822
257
757
961
333
175
876
428
877
828
732
29
765
978
289
30
644
920
542
13
696
307
688
878
624
237
567
647
986
720
867
57
566
948
138
351
475
605
113
978
860
444
930
920
769
881
136
480
871
803
148
103
775
981
22
904
811
122
727
898
209
747
406
211
175
173
646
672
968
154
923
179
747
110
313
606
865
755
992
106
650
347
483
597
838
61
268
265
547
535
496
548
246
634
908
927
49
65
153
507
303
220
995
823
182
528
587
945
643
587
866
262
268
342
838
866
221
902
169
703
397
562
386
48
109
809
387
51
966
836
507
197
847
912
332
621
848
318
645
813
24
780
74
71
907
299
331
266
680
31
666
14
395
997
718
878
813
38
989
972
219
738
906
2
755
267
162
824
500
117
735
641
244
550
126
729
786
398
253
455
753
688
317
478
996
335
886
182
77
511
573
969
15
952
854
136
502
553
350
145
625
584
221
27
963
638
787
836
861
389
912
203
632
15
971
517
251
254
984
67
616
16
80
781
435
73
807
94
141
272
749
480
154
891
949
806
544
557
400
140
996
899
508
69
451
468
797
959
640
303
639
748
383
604
495
873
851
891
824
133
133
784
176
268
313
359
986
359
475
43
618
393
852
663
238
550
617
640
443
233
395
59
825
705
296
643
688
908
451
113
933
568
123
825
127
332
951
833
165
891
747
266
127
632
5
621
74
347
102
949
604
732
422
510
536
36
379
903
220
610
973
898
406
11
135
699
533
975
528
328
547
702
235
416
876
696
587
484
382
647
845
368
967
83
668
105
508
77
439
903
76
459
145
743
919
155
33
927
97
647
831
305
579
318
217
795
700
509
296
331
875
493
820
625
547
395
449
148
759
261
16
538
681
757
104
587
387
651
204
510
910
159
541
347
49
813
266
443
550
889
353
920
27
871
454
809
968
594
875
645
605
272
159
527
823
459
152
964
111
782
639
963
361
855
886
386
743
19
543
697
864
188
448
145
91
444
167
849
866
614
283
237
836
846
488
714
341
786
983
827
204
244
96
781
37
676
318
525
809
439
707
572
527
230
614
232
268
371
284
684
743
828
830
664
381
375
917
842
184
198
549
41
63
130
773
510
453
167
26
142
638
471
835
179
709
603
192
738
689
626
568
131
288
634
95
608
841
667
252
18
282
141
150
425
697
974
532
174
312
472
844
469
999
859
218
866
884
391
127
883
882
710
775
710
434
434
705
802
274
139
259
392
210
780
522
647
50
125
471
585
391
376
887
107
211
391
200
208
637
564
987
120
886
218
36
129
644
44
246
668
314
220
356
476
307
646
902
308
146
447
919
858
200
882
428
605
670
522
689
131
229
811
672
195
41
473
472
841
183
950
390
439
112
566
487
631
863
138
624
516
536
688
446
45
512
605
705
174
53
502
418
176
132
287
458
183
427
615
256
818
862
814
407
870
829
665
932
838
842
32
969
76
932
46
851
202
527
677
812
716
510
954
349
446
675
823
31
950
62
841
7
692
562
995
23
777
655
875
954
111
475
119
873
757
99
63
269
499
515
480
505
952
473
316
376
395
271
592
13
245
247
121
409
689
682
126
365
127
492
265
651
47
723
532
539
521
824
809
504
815
640
134
828
762
880
499
279
769
499
796
429
462
189
811
770
849
360
833
513
453
325
932
11
196
459
137
238
190
316
394
834
569
800
314
337
961
285
428
10
64
562
943
614
322
402
776
230
125
225
484
604
809
826
262
431
55
105
746
36
74
167
524
333
585
188
954
92
674
796
698
958
716
656
778
346
368
226
172
321
397
652
291
306
894
162
803
925
814
828
228
731
607
155
660
319
359
285
703
414
611
601
167
629
677
969
673
436
40
714
793
496
886
313
968
275
465
572
264
300
298
240
494
35
213
891
475
797
280
857
655
747
674
416
466
167
938
256
787
719
644
781
641
86
347
232
872
183
915
591
896
217
473
165
473
623
854
679
101
813
304
410
985
534
184
436
520
168
222
610
890
333
267
387
750
336
162
748
263
511
750
965
884
145
119
877
558
299
172
46
19
982
471
7
844
323
976
308
878
901
662
378
11
597
89
487
744
749
614
104
240
925
267
683
788
780
964
613
694
858
345
787
244
665
769
400
682
370
726
704
163
187
897
572
256
854
802
785
734
922
506
511
381
559
941
521
955
195
828
895
612
679
652
774
532
96
188
49
866
345
481
472
969
816
660
958
393
161
654
767
973
501
99
486
595
413
255
978
98
913
30
953
508
488
440
514
819
354
375
500
293
384
17
37
35
132
493
486
388
276
663
111
664
503
384
438
942
786
986
930
829
266
698
531
148
547
443
541
616
579
285
205
333
481
577
483
90
459
169
794
265
235
522
999
343
303
962
325
635
12
938
838
620
883
198
74
713
696
989
20
693
256
161
243
342
917
622
130
425
449
968
981
214
555
180
195
693
371
216
5
430
736
912
758
567
691
372
79
429
435
306
480
938
507
574
114
28
390
674
988
416
375
89
712
411
403
979
736
627
108
995
660
660
20
562
497
753
75
227
444
510
732
148
425
631
282
152
551
10
983
284
111
256
436
526
401
335
27
841
214
777
602
173
119
930
20
962
128
104
779
610
554
444
428
811
793
748
206
750
266
341
766
242
656
818
113
233
612
574
108
22
123
859
978
26
270
292
592
3
350
365
406
441
194
271
431
471
351
405
408
350
92
840
799
468
174
657
281
13
237
775
914
538
597
400
531
245
928
842
999
707
854
369
708
532
246
504
610
507
17
734
24
916
604
857
880
893
680
310
160
385
686
721
283
116
419
459
811
472
741
599
466
356
790
556
481
28
52
779
784
162
18
586
920
276
860
69
416
56
887
843
583
851
500
603
587
729
801
969
107
624
100
999
589
569
252
952
477
841
436
477
518
102
580
117
839
994
118
907
316
531
959
799
121
833
196
897
123
699
232
704
467
208
512
357
202
53
176
817
966
772
708
435
746
120
82
138
899
603
624
819
202
145
436
872
195
835
146
421
47
890
862
786
159
418
591
686
131
680
288
243
986
548
577
171
901
311
347
845
774
241
165
286
53
517
979
32
42
859
849
802
443
376
705
862
579
893
337
608
872
778
224
89
91
308
359
871
850
89
89
852
277
160
98
419
747
881
294
331
377
723
131
903
550
969
293
673
150
233
774
951
698
228
566
930
463
883
169
535
109
889
434
706
704
177
318
582
29
92
867
692
921
703
6
481
267
727
682
821
991
411
517
977
980
239
404
604
770
555
113
513
625
73
475
445
985
772
951
632
853
680
808
198
594
269
503
535
869
549
6
923
935
598
341
594
969
896
451
285
795
863
169
203
142
732
5
924
800
525
545
926
335
646
951
292
717
381
950
361
172
702
743
672
64
139
967
290
371
578
575
422
982
844
704
251
765
893
19
487
244
964
835
268
875
240
278
94
421
550
766
648
835
646
809
83
605
626
730
715
498
668
222
825
556
892
585
221
451
648
117
786
628
127
227
10
890
824
217
566
886
460
955
142
811
662
282
435
7
743
992
596
918
999
47
323
188
684
549
400
189
342
741
236
757
983
860
148
196
517
488
578
760
632
297
779
584
879
211
980
895
170
449
785
676
43
208
326
666
789
405
982
671
209
641
85
517
294
154
729
139
35
434
418
774
514
538
32
640
119
715
554
216
321
368
727
189
333
299
21
116
422
158
882
526
932
339
410
93
267
335
569
625
550
937
462
515
50
122
125
305
985
540
267
84
408
724
844
462
65
78
234
190
559
663
501
271
111
969
443
510
788
689
359
329
635
617
697
329
774
891
198
158
654
942
301
743
222
574
402
847
332
685
183
94
318
555
698
500
323
701
832
748
672
307
942
339
21
504
695
195
312
712
89
140
336
49
876
964
306
798
187
412
477
522
317
264
287
881
745
642
264
936
285
571
263
749
76
600
724
593
874
666
15
699
457
879
260
324
600
815
836
689
895
431
244
390
672
858
75
292
211
268
55
653
491
424
94
114
340
248
296
968
438
989
663
47
457
564
239
852
86
346
567
683
567
492
116
299
590
55
208
942
315
939
230
529
811
565
380
110
798
602
652
915
162
878
660
439
673
338
252
544
381
772
398
263
248
12
278
644
443
275
323
470
991
480
184
371
140
583
463
805
771
72
67
306
601
467
795
654
73
885
969
944
186
868
905
471
653
785
623
757
417
613
123
863
801
456
9
378
93
939
901
236
800
905
330
209
477
518
476
123
59
255
949
24
847
373
464
709
120
246
426
719
203
857
125
431
200
476
126
968
527
891
616
227
813
434
574
573
486
766
116
720
353
931
101
504
420
641
772
883
779
893
718
953
340
180
828
512
110
186
356
899
853
220
949
940
433
49
368
144
104
608
500
405
297
397
142
88
714
374
273
626
485
89
191
489
299
328
98
826
247
584
655
885
347
908
832
662
846
944
571
537
103
394
85
55
354
801
92
693
601
802
268
797
834
945
418
29
972
32
902
81
891
494
791
194
13
908
254
345
32
824
243
995
526
361
367
136
266
584
140
877
674
924
687
210
84
148
506
550
98
20
248
965
114
275
573
544
538
756
917
809
884
592
652
284
247
488
589
341
859
983
334
3
883
93
832
976
702
831
191
375
930
695
416
270
237
928
886
817
131
886
418
872
464
701
813
613
962
415
381
457
183
381
18
140
569
581
373
286
514
97
996
666
429
169
431
218
905
622
690
756
201
220
140
218
847
407
715
520
78
453
364
633
43
13
370
692
992
735
267
888
57
247
52
158
711
380
116
872
802
417
557
636
917
932
70
548
821
293
655
681
689
197
79
580
449
390
739
686
154
776
736
436
647
247
316
145
708
778
811
61
929
546
822
696
727
664
752
166
32
865
364
768
990
35
169
154
979
830
167
671
449
572
977
762
191
991
273
812
902
630
165
830
462
781
75
618
761
687
981
763
256
746
888
731
35
264
645
471
325
106
153
650
759
607
11
803
793
398
822
642
165
766
189
886
712
948
645
630
352
806
403
867
960
998
73
103
193
242
560
73
94
46
321
476
388
732
712
913
407
252
235
968
32
270
122
261
3
651
425
189
958
242
549
433
470
912
470
744
846
465
605
474
723
390
649
599
851
158
929
738
72
497
77
567
943
272
397
306
162
664
573
878
181
767
662
672
301
598
447
890
632
662
524
864
69
493
396
536
811
739
964
258
695
428
767
337
808
916
471
135
342
976
721
656
973
401
674
78
376
479
904
538
428
437
137
674
541
335
554
919
950
35
411
790
60
931
757
565
177
155
543
93
512
680
47
699
472
461
258
645
801
117
402
771
917
835
174
434
544
743
213
238
446
169
69
659
461
149
154
745
518
215
93
60
115
812
748
975
99
703
224
767
163
984
835
535
674
221
711
608
968
208
829
5
684
489
292
439
580
271
892
302
466
463
709
622
205
278
18
539
600
533
833
548
438
833
262
292
763
876
732
503
328
25
815
812
34
30
997
281
260
852
405
285
494
259
171
314
7
492
978
215
853
172
870
726
437
284
221
501
902
999
119
776
698
484
780
90
791
986
620
8
153
738
941
766
9
296
233
225
394
657
290
177
935
987
188
278
529
581
170
902
776
183
863
225
258
139
656
620
233
298
769
727
817
208
780
774
75
729
928
990
75
369
468
408
733
470
367
534
925
989
544
208
974
599
379
124
726
594
580
451
731
860
688
216
197
626
630
777
205
373
971
658
22
995
952
444
604
95
833
520
7
137
796
619
207
808
118
356
823
45
407
803
927
148
225
32
103
283
937
927
445
149
6
829
934
121
76
734
301
645
198
539
514
187
433
238
942
825
745
677
891
640
471
914
116
224
983
472
676
400
959
70
754
952
344
254
152
906
961
963
172
72
776
27
438
401
952
47
879
914
368
880
10
622
97
524
860
43
50
891
598
590
214
418
601
77
220
105
447
2
385
852
310
986
895
151
997
763
789
307
716
515
154
528
554
692
405
347
130
300
178
252
117
308
833
811
502
959
84
567
572
106
513
458
750
190
77
79
376
836
799
341
212
496
464
995
491
61
240
497
821
957
436
493
466
277
118
649
938
220
229
531
21
891
693
764
312
228
356
707
261
935
320
331
13
699
144
340
435
784
797
881
563
105
175
862
16
742
182
186
803
924
306
566
573
150
957
344
493
344
892
324
427
973
760
910
366
330
393
900
828
777
104
468
619
238
634
545
12
526
699
263
817
104
399
296
675
349
162
474
740
650
829
421
602
83
698
790
930
762
876
156
358
833
90
615
114
970
319
726
397
218
836
442
61
588
941
323
389
159
422
720
113
679
932
456
337
489
290
592
316
34
344
282
727
278
511
782
115
317
261
584
26
243
196
264
290
176
604
742
83
150
653
701
673
58
943
11
681
529
911
613
517
918
995
897
265
441
301
732
932
282
445
709
887
379
675
531
333
391
561
891
62
803
224
845
57
422
483
521
407
130
318
21
794
441
374
271
230
743
823
234
83
533
162
313
547
764
588
146
328
673
430
61
846
306
601
680
304
67
529
825
949
277
368
158
986
91
721
627
428
878
662
153
463
718
142
725
928
274
329
150
232
602
322
321
757
12
846
759
991
641
938
27
101
354
653
917
168
110
984
365
979
475
851
65
879
857
339
471
333
557
648
879
472
136
7
269
438
894
154
746
553
992
103
735
246
848
368
259
263
653
518
342
301
391
786
7
689
254
369
946
198
373
381
478
667
770
216
171
318
680
597
469
956
163
932
281
613
313
36
94
47
127
489
657
546
390
779
188
911
75
248
967
321
67
477
36
107
739
891
883
812
107
757
765
520
691
503
683
675
366
306
151
377
518
2
400
668
922
831
163
845
148
482
254
317
634
376
231
490
371
361
170
802
892
64
29
656
76
765
11
832
97
161
514
289
381
374
450
557
212
119
140
976
694
691
528
493
449
975
856
582
705
39
439
241
692
402
759
433
933
738
35
502
786
186
366
50
17
764
748
566
951
721
305
371
208
935
678
701
837
774
436
924
959
135
693
146
303
881
217
560
429
933
512
460
170
996
906
962
21
704
767
649
650
967
922
922
164
194
966
86
379
521
205
24
69
751
109
207
293
738
345
619
105
548
705
57
830
101
593
635
347
265
653
394
627
498
872
556
921
332
670
22
36
424
759
470
719
548
190
422
716
63
691
260
146
427
800
479
123
422
9
601
509
522
37
253
911
34
800
227
874
549
801
510
427
449
888
409
960
667
654
900
593
779
412
361
796
851
176
249
559
721
322
910
380
813
887
142
231
272
43
314
829
21
499
3
365
355
182
529
274
691
896
379
969
296
925
423
607
110
857
933
258
768
349
33
409
427
645
859
189
17
125
61
621
952
889
897
215
229
325
557
142
684
947
592
664
743
837
556
686
508
704
891
141
153
442
726
499
496
910
186
406
358
207
327
465
497
327
755
927
253
612
864
822
834
482
59
767
367
680
973
50
342
48
304
669
779
4
68
914
722
77
277
498
3
936
842
100
85
326
120
844
334
59
326
108
816
666
339
713
215
329
209
558
235
537
8
616
921
576
548
998
802
4
32
459
190
696
654
357
179
179
468
467
691
339
743
377
521
302
393
391
534
549
346
950
769
914
507
676
707
877
191
103
410
225
278
210
672
394
98
318
991
761
488
774
503
566
235
28
773
38
565
347
884
90
779
463
386
968
258
107
842
854
174
466
282
236
955
339
316
33
162
463
814
19
722
394
958
789
561
316
711
239
613
852
771
397
149
413
398
738
673
181
999
986
71
397
506
110
795
832
771
712
611
611
384
755
255
817
936
618
827
867
937
781
663
643
568
192
529
537
611
676
115
764
438
711
238
261
366
667
624
951
26
722
457
726
609
771
139
230
742
89
554
661
841
808
302
134
918
533
466
896
467
336
827
51
684
779
776
425
268
911
217
27
969
175
931
788
889
118
113
642
535
921
334
780
842
245
337
903
668
748
857
476
868
724
569
842
322
692
83
710
53
596
473
304
393
249
520
606
375
829
767
537
304
377
242
967
85
511
40
703
47
217
566
517
318
277
805
381
962
563
268
468
234
83
948
979
484
915
923
167
826
818
406
114
308
256
806
459
583
280
956
579
583
624
66
416
249
811
666
459
214
633
459
716
99
657
134
244
195
97
698
509
736
375
817
613
669
159
189
126
482
91
467
500
848
492
862
499
725
560
815
610
622
661
621
253
843
998
912
523
525
414
183
684
624
163
168
814
793
957
453
876
72
105
713
187
881
578
810
591
403
55
853
184
124
782
436
137
314
957
644
280
343
864
888
571
80
638
156
264
474
4
438
508
915
169
909
483
944
288
144
533
132
645
350
291
577
311
334
752
966
127
978
694
295
79
606
609
688
423
296
455
449
885
286
786
155
594
329
309
632
394
420
161
938
471
768
551
574
865
499
940
356
19
398
546
614
493
57
994
621
128
447
417
552
859
283
987
288
696
857
307
915
26
100
99
786
323
56
58
284
171
128
762
572
405
128
494
173
811
120
465
349
869
663
26
192
916
533
656
306
649
39
406
89
626
775
504
253
599
827
234
101
600
442
208
621
478
768
850
263
131
328
729
338
862
183
28
779
654
7
429
207
802
4
556
814
839
6
24
672
531
14
906
43
458
989
284
384
175
998
918
463
55
950
209
557
585
153
37
592
626
654
11
580
530
190
573
494
447
438
373
651
345
340
537
554
152
403
186
957
60
416
694
340
314
969
408
201
533
801
979
736
373
297
373
147
947
460
573
866
838
87
538
314
236
986
354
928
483
819
365
729
912
744
328
103
492
143
152
453
914
428
81
162
496
658
874
858
555
476
870
801
145
581
395
240
51
913
882
134
699
109
195
147
509
69
735
553
178
200
354
903
177
388
328
406
98
996
530
498
396
102
816
661
90
125
179
241
625
897
622
94
984
895
19
823
766
646
521
100
73
72
948
868
342
384
154
511
712
736
549
78
479
843
30
639
181
66
711
440
842
572
686
926
918
584
413
970
464
929
644
586
60
658
590
509
412
691
482
845
824
845
68
292
259
386
354
809
761
866
768
388
784
395
876
917
45
637
614
909
663
291
372
848
94
994
231
356
168
651
174
802
270
809
90
18
849
898
332
177
43
698
496
260
239
567
742
14
683
50
215
656
362
251
717
452
690
649
716
784
572
67
431
682
646
678
626
94
82
329
702
636
114
404
255
843
150
175
732
701
2
101
867
917
421
614
34
691
462
306
433
52
407
257
363
925
504
874
503
234
511
432
120
936
234
515
478
774
561
39
922
976
652
355
293
226
293
423
61
385
306
251
464
444
338
773
544
647
512
899
16
954
623
19
117
29
702
275
587
910
188
548
298
399
949
373
621
21
802
68
694
69
444
736
220
209
849
738
14
155
682
676
36
340
764
884
37
820
993
371
674
296
819
604
422
292
124
223
434
139
837
174
484
635
846
85
386
162
242
589
800
988
452
767
400
798
666
915
831
853
313
70
730
265
675
4
412
406
842
490
496
582
980
236
896
509
670
927
924
280
466
461
834
83
811
535
218
238
214
288
855
13
930
560
38
827
663
807
272
559
316
507
885
435
158
184
531
683
405
431
374
174
457
766
552
19
300
988
836
243
752
447
37
215
717
580
93
266
590
690
113
61
901
699
433
362
675
21
696
900
287
468
522
493
637
486
60
763
622
654
943
821
720
713
996
732
528
372
600
825
319
289
397
51
461
321
849
468
853
469
766
24
776
188
414
860
886
451
570
368
112
285
219
187
328
48
945
255
407
466
305
725
854
519
653
794
272
277
869
210
921
297
104
917
865
835
590
563
368
252
6
847
909
112
969
347
604
760
810
789
268
98
526
313
792
638
641
339
903
315
55
977
586
975
327
946
429
373
537
132
423
73
215
597
129
180
351
602
339
902
337
949
90
300
282
136
65
461
460
954
142
556
181
505
358
500
981
991
365
787
278
593
409
848
772
743
579
658
218
260
458
681
713
102
571
778
440
12
137
125
757
594
554
548
263
231
428
561
732
338
290
326
121
848
752
424
347
553
878
992
928
95
188
881
97
392
172
19
272
524
981
844
999
288
825
309
175
556
121
537
128
699
216
195
433
52
556
415
773
435
68
844
131
778
253
806
374
376
11
479
434
802
851
928
43
225
530
440
891
130
68
872
329
101
749
261
181
896
276
702
994
619
583
615
671
681
426
375
480
448
863
225
420
933
730
267
352
298
683
751
74
622
265
841
155
290
310
733
980
308
141
388
471
662
281
653
735
518
94
572
243
331
278
659
357
615
83
469
676
648
330
640
855
328
890
87
21
921
643
360
496
403
368
158
617
917
952
370
412
585
29
385
873
543
689
570
665
506
712
295
599
190
409
841
210
800
81
863
170
844
75
129
396
54
783
489
73
783
388
128
277
230
820
168
294
365
37
668
456
598
625
956
873
613
300
264
625
489
754
560
175
985
74
30
418
282
521
196
419
347
305
183
624
4
659
237
722
243
636
131
199
611
423
615
616
507
493
665
106
477
659
311
692
844
797
289
384
502
551
131
241
145
507
323
957
767
265
655
536
87
532
231
863
628
809
51
855
324
496
920
477
977
274
254
381
772
260
891
275
572
330
742
263
162
629
974
857
28
590
538
875
217
224
839
821
432
378
336
950
930
71
777
417
712
452
663
971
27
640
750
707
135
863
792
80
446
848
44
8
544
900
190
683
101
662
855
542
843
857
760
641
473
352
385
417
493
14
252
745
406
805
638
200
805
582
284
539
964
28
760
504
243
507
354
347
807
747
455
709
214
338
386
351
130
237
643
614
43
816
848
234
231
928
595
982
414
215
517
891
745
909
188
412
820
612
962
868
723
57
982
930
168
636
113
79
919
815
308
495
636
853
212
463
953
360
681
438
196
651
320
236
954
435
542
721
102
537
345
483
705
118
861
142
236
840
422
443
438
896
366
948
528
915
856
646
388
112
25
732
552
257
675
936
14
691
997
365
291
204
495
993
684
733
718
203
467
510
421
339
87
126
850
819
675
677
728
760
772
615
715
438
728
95
229
343
81
199
7
672
407
871
394
226
204
249
94
680
227
165
21
769
908
937
990
296
136
838
32
317
173
457
946
326
859
673
449
20
785
691
766
493
280
825
148
864
976
625
213
765
68
798
380
539
974
445
904
805
796
842
761
683
527
260
894
237
511
477
396
217
521
446
288
379
304
106
743
840
77
574
210
504
663
275
966
81
625
775
786
53
815
831
738
737
696
767
32
643
940
384
827
84
298
116
629
249
435
539
456
41
74
5
959
334
701
814
313
471
601
557
856
914
397
95
178
128
790
727
368
483
581
373
777
570
468
578
545
38
161
672
148
984
633
283
730
539
242
797
9
610
735
173
530
532
95
655
513
108
578
222
244
91
416
6
558
844
7
297
355
828
626
13
491
458
267
763
288
455
59
85
987
42
8
526
320
510
638
846
734
593
661
342
504
488
731
769
985
941
387
969
163
29
967
270
875
121
366
526
267
179
538
87
656
310
583
458
433
18
377
749
764
598
263
824
993
188
815
895
551
874
379
245
705
401
675
297
656
138
482
416
189
903
315
145
43
602
429
972
110
565
919
747
721
781
333
803
764
438
144
289
746
134
11
562
654
89
657
498
538
623
292
191
878
432
801
719
417
949
65
962
902
553
143
216
16
209
516
525
251
121
366
2
61
16
268
651
137
960
123
930
351
861
552
806
133
935
262
972
637
560
505
753
622
89
306
816
482
634
210
173
938
379
866
156
329
326
793
506
223
121
898
723
309
820
430
571
953
482
274
876
10
563
303
832
272
567
303
144
671
432
787
501
635
901
492
962
811
350
938
823
760
740
355
313
980
484
595
9
970
864
544
383
766
868
43
913
192
18
523
75
138
84
477
922
629
509
321
647
692
756
145
854
855
392
20
118
647
429
979
9
852
853
154
42
617
105
663
906
573
788
270
864
982
878
440
493
200
390
244
215
818
983
804
378
101
405
422
174
628
901
727
47
893
295
934
482
284
933
94
821
741
171
215
875
703
495
480
604
304
535
473
890
141
844
622
253
710
330
263
745
940
160
839
135
459
867
768
776
473
326
582
143
916
57
257
679
494
60
319
890
267
866
715
152
334
390
911
34
545
8
996
656
954
554
281
182
553
273
356
361
579
693
849
39
925
964
110
282
707
323
89
889
555
150
899
285
445
749
966
790
50
254
891
100
698
238
997
382
815
505
450
833
428
258
42
622
213
117
918
345
511
642
301
276
654
39
438
791
606
111
344
386
322
187
891
57
832
579
963
325
752
452
793
738
325
837
408
493
329
156
161
801
94
444
123
280
46
79
954
868
404
116
417
796
183
199
78
892
327
648
81
286
947
651
795
392
343
879
282
38
100
978
472
558
973
44
521
508
317
513
243
429
941
807
33
85
562
637
218
186
227
285
641
646
825
244
933
91
191
26
572
817
985
593
785
885
923
831
201
555
482
315
39
846
624
213
387
661
72
170
161
124
726
995
737
700
374
691
308
40
211
241
494
319
484
126
818
233
404
253
643
156
963
575
787
373
283
709
822
304
850
245
868
361
279
869
35
491
176
443
792
780
269
401
503
253
982
604
592
212
262
609
136
395
970
175
980
351
317
757
936
674
914
589
895
725
414
698
926
677
356
263
122
934
651
649
148
88
992
335
35
644
26
742
743
467
381
211
902
638
8
183
108
814
268
815
163
814
631
792
795
302
313
437
710
820
985
634
212
98
580
514
774
252
516
75
39
269
341
690
607
483
132
874
626
648
304
591
175
748
114
235
21
404
958
78
641
353
306
232
54
792
451
661
249
837
886
166
627
141
575
547
277
94
973
102
134
611
80
912
628
651
638
281
18
578
854
351
544
729
929
402
689
736
499
721
784
724
309
33
238
253
547
817
963
421
172
411
621
60
495
105
227
773
140
738
374
65
754
834
173
241
584
783
140
195
350
59
711
934
992
438
790
234
37
385
77
718
160
159
291
621
837
23
75
212
100
992
975
291
139
855
246
280
15
991
48
20
79
304
171
887
146
229
186
319
551
819
340
590
126
171
793
25
112
523
388
681
669
669
289
61
500
999
135
253
357
70
587
32
669
36
874
853
688
183
87
830
14
476
769
551
231
120
446
416
593
622
727
461
779
506
717
859
26
685
891
847
228
767
928
78
108
776
664
612
690
293
728
371
914
160
385
922
427
486
254
14
470
515
326
151
797
688
236
970
404
375
848
991
110
675
24
62
672
76
821
936
609
316
967
94
27
292
208
78
508
381
444
46
628
773
585
954
446
956
628
256
991
323
614
420
212
873
652
642
514
2
817
354
186
97
898
31
848
562
491
688
945
935
658
942
516
805
446
337
295
398
149
747
545
593
343
308
917
845
405
50
687
38
68
863
178
929
598
457
647
652
370
520
197
657
684
425
843
350
973
986
311
109
353
468
885
897
277
850
193
259
161
702
809
92
951
707
695
556
654
291
812
562
194
539
970
779
483
909
622
427
639
979
563
74
188
236
196
144
654
933
316
528
78
895
165
777
949
513
69
655
698
571
911
9
783
673
637
767
624
243
639
518
192
26
609
446
614
262
895
602
771
115
363
972
772
538
667
181
465
107
212
102
728
473
298
384
505
711
120
935
748
532
699
543
293
124
317
864
15
355
991
558
40
384
391
260
182
289
498
141
621
65
127
548
306
779
401
157
963
115
826
440
20
126
79
742
259
963
651
699
384
446
382
263
797
659
508
523
373
58
937
107
920
612
32
786
982
611
315
275
354
529
413
324
70
808
512
939
315
395
985
921
682
270
715
327
485
579
562
143
206
746
231
877
631
395
779
796
959
993
596
686
554
607
199
622
228
919
303
507
878
804
23
949
57
310
626
261
877
913
549
345
99
807
802
122
794
540
863
302
654
70
263
965
623
909
627
398
758
550
219
741
997
233
46
666
30
257
970
405
207
79
909
724
985
883
630
519
941
52
693
462
208
349
348
407
795
783
343
449
337
296
835
203
610
366
340
570
963
861
856
929
787
480
182
458
118
22
514
835
659
606
223
471
748
771
252
356
474
287
713
215
569
823
772
142
440
370
855
699
851
108
118
555
871
165
474
806
328
289
584
468
220
538
711
673
242
245
297
4
719
304
252
101
162
243
563
978
138
924
575
349
106
943
237
622
52
424
709
807
816
595
116
763
354
865
484
55
96
246
803
639
839
736
95
351
100
515
783
757
927
145
593
205
65
327
468
340
598
932
18
557
895
388
934
738
690
198
225
265
383
667
995
347
144
698
286
561
795
485
88
833
217
12
116
766
934
475
339
24
5
851
731
551
459
905
627
350
618
186
679
769
316
312
891
223
542
219
384
75
670
460
223
479
176
190
432
971
932
222
521
156
133
655
217
633
500
195
213
638
42
514
986
222
236
343
936
125
402
103
305
357
222
650
591
934
683
390
172
893
497
860
251
834
662
702
904
692
605
177
242
309
122
916
974
80
893
335
760
73
192
907
660
555
957
652
888
246
547
762
713
826
293
909
295
954
699
671
865
80
950
584
67
466
80
829
361
396
408
11
689
254
976
157
393
261
469
528
875
15
220
931
865
554
128
187
302
809
509
924
115
331
607
706
227
546
454
607
410
828
612
471
873
984
329
819
81
288
13
214
761
19
72
767
794
771
248
801
997
288
943
773
31
377
894
5
70
261
357
670
974
951
576
6
664
322
708
175
564
482
704
141
24
414
919
400
323
915
617
99
94
450
715
15
186
89
841
653
507
14
596
994
356
86
240
749
488
754
920
805
664
464
249
482
33
344
414
588
375
283
55
734
494
746
907
603
2
216
307
550
16
53
123
844
913
403
580
624
41
53
692
913
688
642
809
568
462
972
663
237
619
702
63
34
296
188
382
68
868
184
954
369
468
965
13
378
564
316
365
250
378
232
926
978
821
414
70
891
221
604
617
785
664
36
177
158
728
149
531
490
564
409
645
795
295
166
39
273
193
617
204
631
678
236
153
242
446
974
47
58
5
166
245
660
221
159
82
994
632
468
553
937
234
18
414
418
434
214
562
762
802
232
147
333
60
437
800
328
752
883
113
946
243
227
242
286
170
885
695
683
396
485
461
507
728
139
790
642
73
28
602
172
11
130
689
13
118
88
296
407
839
720
709
981
336
462
492
5
694
541
236
559
15
281
100
562
526
92
894
630
747
577
249
623
525
22
138
70
833
284
949
412
6
744
59
724
275
364
956
828
971
580
401
487
350
160
47
451
560
382
129
224
78
424
818
148
884
723
687
457
516
88
922
401
217
294
367
322
853
257
20
349
437
433
866
273
656
452
19
30
834
346
671
978
395
646
89
157
778
126
796
825
328
646
234
901
270
664
107
454
719
211
568
266
759
313
201
30
829
311
556
51
635
194
681
421
343
848
324
539
228
100
458
683
906
895
989
978
505
335
848
874
931
933
691
881
443
218
541
333
453
679
67
425
714
546
182
202
583
228
173
893
952
441
900
677
283
274
170
580
2
310
946
300
205
294
737
25
414
716
532
204
998
834
52
744
315
563
944
551
778
146
196
432
891
775
512
374
617
860
918
61
708
11
556
650
95
971
609
449
640
359
322
813
5
636
341
85
451
851
407
891
440
871
173
296
178
955
184
669
863
873
626
609
394
560
553
635
156
212
372
107
898
627
232
601
192
85
960
208
756
769
59
719
646
4
608
602
919
363
52
913
400
302
976
744
68
132
55
76
879
741
312
794
713
9
424
890
90
372
685
595
967
305
600
795
820
440
132
490
660
496
132
801
182
653
94
319
19
653
825
725
667
273
910
751
288
707
452
211
348
627
436
267
75
615
581
496
833
916
482
411
921
198
935
826
707
662
596
155
201
366
352
200
738
665
634
625
830
979
130
113
491
686
622
518
451
348
364
965
697
325
919
949
806
956
348
224
805
581
428
977
51
219
948
676
627
981
167
556
996
529
973
577
138
508
456
73
435
766
999
282
71
596
684
508
440
221
58
881
537
220
74
505
747
35
82
498
188
565
553
720
589
505
843
670
454
35
780
895
849
155
151
40
927
167
224
229
263
450
511
95
547
759
272
227
261
683
686
461
891
998
586
590
376
908
570
333
992
92
776
88
704
396
555
779
163
746
84
277
610
856
264
579
328
405
569
691
771
87
378
146
470
406
43
176
789
880
789
962
900
872
96
715
500
831
466
821
730
528
234
421
787
570
122
858
151
175
421
711
670
918
747
800
407
853
177
825
787
569
253
17
260
530
422
616
189
858
186
778
886
197
736
956
479
209
484
93
717
207
389
82
123
689
487
60
957
83
698
595
536
301
320
769
147
277
394
531
106
42
316
373
189
84
908
712
815
542
704
76
773
770
561
489
779
51
746
682
632
844
981
713
898
455
159
36
839
170
938
423
698
310
556
65
154
278
4
981
812
197
356
894
74
148
131
59
64
79
318
2
615
90
568
306
614
630
832
663
990
33
667
428
60
645
783
994
882
524
940
143
889
341
427
109
509
495
193
124
83
407
861
662
918
566
699
343
332
710
534
542
955
9
468
47
251
247
38
933
948
584
484
450
771
814
390
456
243
757
818
918
104
84
956
495
847
291
602
733
354
513
761
482
103
820
280
145
170
33
86
849
539
370
306
42
911
248
855
650
397
163
5
40
504
947
674
798
932
600
309
295
934
709
641
388
968
743
874
478
364
275
867
443
403
243
644
948
810
301
935
169
48
346
992
878
158
271
209
196
708
495
636
758
762
394
756
413
648
920
534
188
926
685
58
468
498
831
117
810
8
432
939
36
83
394
529
375
622
153
838
938
811
52
319
751
549
644
93
559
267
695
946
903
419
749
349
508
978
744
478
962
433
807
36
886
332
424
599
200
411
427
506
816
509
905
941
958
560
20
978
156
701
24
689
144
442
570
920
967
251
503
109
382
842
813
167
897
284
30
738
196
525
154
618
799
346
112
639
667
150
682
480
242
130
795
2
180
755
81
484
388
213
829
3
906
629
979
715
433
358
72
759
839
914
625
544
663
438
479
454
334
828
132
873
428
731
306
885
284
610
246
136
104
421
670
511
876
767
95
652
988
226
345
938
778
393
82
456
898
874
838
685
156
189
372
535
118
740
934
32
265
117
499
565
261
667
948
599
72
542
641
596
900
866
117
820
276
53
884
846
474
198
50
37
749
335
985
101
972
50
233
570
244
225
789
985
426
312
502
465
336
533
296
452
537
536
167
402
278
697
76
335
641
203
158
883
313
244
833
496
884
808
495
790
774
943
773
360
558
919
337
223
573
315
160
694
520
337
294
764
502
565
497
904
986
531
756
279
556
642
523
313
504
352
230
786
628
220
697
207
597
205
184
215
427
445
143
795
530
326
450
208
272
779
60
145
500
524
242
157
829
119
856
750
27
942
151
643
825
635
649
728
707
535
50
809
442
745
751
93
641
972
624
96
307
673
161
883
89
48
730
773
990
724
355
136
222
373
914
544
426
473
812
307
135
242
46
909
70
715
938
211
431
402
343
67
129
9
729
900
862
220
58
691
936
426
73
185
411
698
4
290
387
515
68
449
962
440
116
737
759
227
145
522
637
941
544
57
818
672
99
388
344
74
530
810
875
260
24
80
487
214
3
366
228
159
963
108
562
391
819
64
852
67
755
70
740
192
368
346
921
431
889
374
217
18
9
252
749
188
92
382
525
701
833
153
719
383
842
62
318
320
822
168
737
255
567
579
693
242
177
153
531
491
6
260
156
900
717
592
936
158
504
553
697
899
373
995
567
976
389
240
875
962
941
114
312
336
892
85
86
31
787
889
992
461
340
697
661
651
905
404
19
207
171
596
179
793
214
17
809
725
686
806
752
725
253
840
352
416
854
564
931
355
604
652
593
496
434
633
415
922
253
794
837
642
706
525
17
612
883
631
602
364
147
413
141
10
732
518
724
364
892
944
717
351
101
272
733
909
475
906
801
463
315
471
614
449
486
387
748
726
917
177
443
771
980
19
773
177
557
30
342
96
746
844
247
808
269
708
387
272
84
190
228
971
449
243
133
404
148
131
156
932
30
571
493
516
934
169
705
30
999
810
862
563
28
151
469
87
637
213
883
788
350
699
622
266
964
255
650
293
842
601
718
455
341
300
42
613
369
497
274
373
926
36
333
519
570
318
351
612
396
834
111
740
253
315
754
896
297
142
981
165
941
33
680
714
906
870
597
198
511
717
133
176
701
27
348
236
588
617
315
984
865
821
338
530
606
158
239
784
990
928
997
131
559
310
186
186
171
500
989
39
350
728
281
576
852
912
872
22
204
813
765
443
854
421
640
603
621
511
824
107
259
753
689
759
343
304
663
546
747
73
295
626
705
700
834
931
552
609
861
856
347
696
998
886
240
633
135
286
613
841
980
544
809
51
753
258
557
611
714
77
675
455
504
156
939
260
343
105
987
13
994
777
900
157
883
909
770
290
687
944
261
70
986
600
781
491
521
316
844
352
927
764
929
950
931
113
759
467
950
712
975
103
962
815
174
367
833
363
692
235
48
33
612
863
88
959
919
464
489
825
373
398
301
3
413
212
648
603
261
435
416
673
187
509
450
121
321
735
181
809
108
854
292
481
932
356
12
676
498
667
158
358
178
134
669
497
407
587
493
503
923
880
4
42
218
136
411
897
560
865
251
579
214
179
813
347
6
657
497
757
701
854
582
366
412
137
911
901
274
119
394
739
54
736
715
667
670
207
434
315
879
17
956
530
544
644
936
258
810
711
671
943
60
80
445
42
158
458
350
368
799
921
119
753
512
539
363
613
35
20
965
32
980
127
640
331
831
18
601
943
847
390
581
486
902
839
321
651
233
815
979
519
433
659
752
549
709
996
185
886
165
948
175
566
316
141
186
260
647
443
362
942
55
157
705
815
301
712
666
394
507
745
843
936
367
939
471
34
507
57
958
674
597
487
643
975
363
709
932
428
878
218
336
181
334
860
282
20
83
307
181
282
124
12
474
766
776
85
607
416
321
768
505
347
896
955
456
422
662
242
123
741
551
343
832
360
33
18
999
936
137
325
941
910
375
175
300
685
991
179
208
978
667
695
623
447
869
672
671
757
182
939
907
296
743
124
23
639
801
44
421
714
299
229
893
769
540
470
975
811
198
588
512
482
210
675
241
579
590
67
986
86
413
455
344
738
375
831
364
962
331
376
289
681
880
414
837
152
503
548
264
542
73
986
33
108
750
14
821
445
525
560
658
244
736
824
137
583
218
811
635
221
489
192
344
749
398
47
929
798
431
312
252
756
414
114
389
83
701
816
577
987
281
835
950
982
640
738
429
380
954
988
161
918
134
891
482
61
376
796
807
190
262
142
262
234
423
789
962
132
389
406
213
391
669
959
344
741
601
804
296
782
736
237
710
371
911
66
737
548
329
171
452
687
358
485
905
147
375
121
388
968
523
37
122
732
401
773
608
67
413
265
607
424
773
226
696
943
339
167
412
154
238
476
754
944
301
863
561
439
391
722
34
441
241
571
310
798
506
792
280
206
785
329
447
320
369
385
591
196
194
869
610
699
689
755
424
282
526
886
642
526
216
406
210
462
958
939
455
569
8
589
651
808
959
341
15
588
395
987
729
36
567
610
620
483
160
608
813
335
425
804
754
809
726
704
861
734
41
235
787
791
809
344
435
675
132
491
594
54
211
202
779
999
55
327
379
812
828
644
284
815
788
860
518
835
156
914
779
805
633
975
387
637
720
864
222
428
931
484
874
143
516
808
244
992
739
866
622
879
994
787
317
490
771
800
198
753
693
118
956
47
357
506
557
982
562
978
967
923
917
147
110
792
411
923
757
352
682
956
476
525
25
544
214
54
399
254
479
746
358
617
311
903
124
439
440
683
905
36
521
603
649
841
343
787
38
861
648
911
902
398
266
10
689
405
854
430
797
970
376
83
238
347
774
145
11
663
195
160
365
477
106
762
861
420
879
342
776
535
292
240
783
54
687
163
805
662
443
472
302
937
606
554
135
609
392
885
527
228
755
133
146
867
517
809
8
642
47
228
13
831
904
473
877
489
117
23
545
291
603
278
289
999
456
528
214
90
668
741
170
230
46
886
71
737
128
10
551
78
239
893
415
352
192
754
480
750
398
144
737
261
868
200
506
461
963
273
900
17
884
525
31
675
229
140
817
14
517
388
664
991
276
810
82
265
907
981
616
505
246
645
172
784
324
426
947
484
467
780
904
834
564
609
687
608
928
219
572
359
403
482
875
786
947
757
410
858
31
57
610
281
213
746
308
633
712
776
885
259
413
916
30
606
727
355
284
385
120
367
946
660
386
311
574
932
903
814
498
727
898
392
439
535
52
599
164
687
242
99
839
310
496
720
955
751
938
689
861
44
701
737
437
766
399
303
748
702
106
266
496
777
226
338
712
703
607
116
35
75
708
591
101
227
601
406
232
433
29
29
287
707
225
248
270
124
152
744
976
586
312
501
380
486
880
95
188
914
690
562
421
469
964
662
888
964
14
956
211
123
599
990
49
989
876
107
303
888
629
413
152
285
241
240
671
476
837
716
514
874
586
306
861
863
590
76
578
233
991
313
864
950
674
797
851
667
857
87
232
70
99
674
714
800
291
260
597
649
73
834
917
328
792
554
849
258
165
592
354
843
37
159
779
637
137
819
579
68
511
142
744
195
133
159
622
431
460
303
928
856
835
41
886
987
875
177
954
739
334
201
888
831
428
539
75
163
918
977
680
225
261
633
668
718
611
205
235
96
874
576
738
395
372
7
320
783
762
817
416
531
273
398
902
386
703
645
234
997
185
357
963
194
909
128
507
204
944
765
112
751
681
138
933
940
379
786
75
677
129
413
598
795
749
606
184
780
400
755
855
494
971
128
189
388
738
811
353
603
264
850
759
570
283
618
179
980
92
494
167
362
308
70
525
842
996
735
509
844
386
375
179
182
485
176
829
309
980
713
260
624
716
385
883
87
344
239
959
826
661
984
468
609
410
229
696
778
761
941
207
466
315
857
409
566
201
27
552
124
630
486
675
477
483
523
196
105
255
905
437
506
592
95
157
660
105
237
724
241
44
170
794
839
129
232
470
537
574
206
509
195
705
190
28
97
336
13
553
578
915
854
233
582
997
184
890
875
4
316
434
319
183
173
303
666
745
714
566
999
959
887
890
115
759
393
82
247
124
91
482
444
505
728
394
163
291
519
603
83
316
987
485
683
381
194
240
169
272
316
966
251
343
542
7
23
578
37
851
307
707
971
135
446
157
931
792
351
772
2
393
809
22
2
487
971
305
532
452
756
309
972
820
227
950
838
596
813
935
653
597
582
618
100
86
542
623
61
593
860
791
654
224
386
18
151
530
748
774
729
827
374
344
517
468
363
563
449
418
593
298
770
828
321
757
276
877
151
122
627
482
453
732
446
447
732
431
219
513
544
501
987
512
434
217
510
413
335
125
713
564
249
253
935
110
3
550
804
106
715
725
456
56
171
76
679
240
220
346
145
871
742
654
841
890
229
998
374
524
778
907
210
327
127
988
414
330
366
721
498
609
993
178
253
540
234
84
105
934
126
924
145
295
46
596
875
320
538
407
252
124
584
530
230
373
773
21
503
483
737
8
699
915
882
539
3
767
621
849
753
512
682
345
644
447
837
315
852
84
664
440
332
529
331
572
977
501
802
678
348
501
592
831
184
488
640
482
893
61
530
309
273
381
779
871
78
563
470
940
674
832
401
871
247
362
618
75
451
894
398
743
152
987
715
445
15
391
70
7
721
219
630
547
490
489
26
29
223
525
98
293
526
769
65
51
962
318
930
164
276
564
700
323
644
612
922
433
260
257
250
107
406
296
652
707
603
904
726
371
597
130
318
553
418
59
305
828
211
704
142
609
417
627
872
872
245
604
79
164
963
526
187
242
427
60
390
26
341
342
186
847
993
663
516
963
872
511
111
740
209
427
20
133
121
337
431
209
931
414
977
73
365
205
646
687
360
205
447
654
923
991
410
85
248
795
87
263
23
447
738
416
329
798
416
645
361
888
451
930
248
96
647
700
184
815
538
161
506
40
232
862
997
115
202
615
262
133
957
681
381
967
138
982
576
84
894
221
387
862
238
536
705
289
459
54
475
411
792
197
81
908
544
249
998
968
509
862
888
472
863
297
860
27
258
87
491
437
549
43
315
6
216
692
551
91
717
574
187
148
908
371
953
575
222
962
230
284
769
494
568
98
171
790
607
183
172
839
546
79
279
154
843
139
264
895
565
858
529
278
540
78
709
181
473
768
763
375
417
474
980
24
722
953
373
13
968
745
466
56
979
953
141
388
391
204
488
367
255
162
388
732
571
144
693
73
41
455
196
975
247
279
215
72
711
605
946
491
223
146
511
43
113
62
986
583
287
535
719
606
93
240
884
592
414
328
649
19
573
723
684
886
214
690
384
592
616
80
98
696
147
575
330
907
949
551
550
298
55
62
922
14
666
333
286
386
685
169
13
80
437
882
202
37
659
448
122
345
544
811
54
170
196
31
863
56
104
956
635
339
451
416
908
438
84
568
40
344
335
869
425
193
954
774
714
584
31
272
985
137
627
275
801
305
854
989
473
635
791
276
482
928
290
342
402
981
671
146
772
216
882
769
264
584
147
880
317
158
94
830
314
815
308
943
440
813
400
919
609
521
845
781
607
585
391
30
707
809
953
898
631
98
774
874
690
803
835
27
609
200
706
514
343
422
713
422
849
162
103
689
539
944
855
365
583
767
286
882
895
799
92
880
551
349
610
905
749
965
226
530
241
551
560
487
907
418
913
446
82
944
637
740
610
952
922
420
259
157
15
919
102
619
740
265
170
560
948
859
620
577
720
307
202
351
399
200
254
484
688
795
293
863
931
406
979
403
416
698
250
31
709
822
955
401
215
470
703
592
167
850
200
589
814
699
792
599
74
287
437
417
217
310
430
955
198
174
746
557
966
670
974
463
325
857
433
293
214
410
932
91
897
454
377
447
949
932
837
337
336
686
236
828
584
679
114
879
718
343
834
520
971
398
686
613
797
94
942
825
468
373
41
58
55
542
889
138
500
663
421
319
435
594
969
348
661
395
869
98
961
622
362
539
67
187
157
132
162
282
890
666
383
155
954
828
539
291
27
543
808
164
436
472
233
827
639
902
314
414
675
889
148
719
924
100
925
251
622
843
97
168
880
843
711
179
151
442
664
487
781
764
316
764
669
421
220
105
617
116
361
13
867
46
396
251
675
340
694
872
843
302
722
522
553
542
461
149
61
4
592
94
95
151
605
448
126
947
629
448
548
112
931
927
850
392
47
135
646
63
38
907
219
354
893
966
822
536
682
125
894
654
463
373
209
215
349
841
969
775
980
566
648
450
496
483
262
603
354
745
968
602
743
592
512
23
926
853
35
359
681
671
247
581
880
481
163
446
645
197
450
714
521
979
714
672
736
893
78
782
705
479
835
315
631
158
119
972
947
765
249
713
675
489
779
138
265
847
909
555
94
427
986
438
667
546
514
718
130
13
723
261
634
594
87
503
356
246
723
246
648
431
104
322
360
330
88
940
292
333
825
466
50
141
924
110
982
146
562
756
397
178
536
379
524
659
951
855
702
551
883
874
10
720
95
188
405
553
211
623
627
549
983
259
871
291
406
975
628
256
595
256
268
856
301
728
350
857
133
933
944
505
972
319
498
120
952
247
234
531
7
519
348
62
284
356
60
269
224
235
134
147
549
344
960
790
725
273
682
754
286
572
507
383
793
327
650
644
458
254
759
732
915
258
674
237
152
660
465
931
918
736
210
292
136
614
960
930
420
810
917
970
783
635
815
8
908
46
651
766
766
721
3
699
530
904
116
861
984
340
957
985
911
220
478
361
839
386
25
655
723
325
754
884
927
381
927
242
810
733
138
663
94
96
813
462
417
842
425
922
442
422
811
896
215
23
222
580
225
295
461
880
259
91
901
869
127
881
484
247
575
321
956
33
54
685
24
889
76
365
894
476
80
22
687
378
671
133
36
369
296
139
459
349
784
962
363
86
970
931
107
353
114
54
983
874
259
322
714
567
410
419
183
391
118
507
242
344
79
381
572
955
197
409
181
501
994
887
929
171
616
202
980
545
772
963
672
8
299
676
194
799
279
882
963
820
43
212
292
39
25
932
279
59
379
214
526
91
225
692
493
867
521
493
52
298
289
284
664
534
154
724
744
821
810
833
217
442
860
644
819
840
845
989
974
8
295
301
227
455
404
659
375
354
160
707
968
988
700
779
203
773
325
782
790
619
949
180
206
87
673
86
672
432
775
212
933
186
276
716
429
363
847
570
794
10
354
395
447
518
817
440
255
122
408
871
365
955
844
860
867
9
831
920
996
59
347
12
143
191
722
831
95
935
543
981
100
185
950
302
390
920
978
605
485
606
274
811
115
82
911
430
235
763
9
240
433
117
946
170
575
249
894
366
456
700
353
402
546
75
920
946
916
434
791
725
101
722
827
713
496
112
427
209
315
519
959
323
949
526
93
285
800
779
566
642
53
873
492
503
225
344
457
427
567
693
990
758
277
465
763
810
103
511
538
264
196
831
46
525
944
431
9
263
354
477
103
947
165
84
927
969
473
79
483
768
394
420
563
596
623
703
228
563
544
370
10
42
166
989
720
921
337
517
435
134
40
662
683
782
264
759
836
714
30
523
552
427
359
58
442
255
43
456
74
259
478
758
201
168
703
338
912
979
106
154
649
992
637
762
443
589
676
551
107
466
454
131
505
450
211
524
510
894
167
57
471
373
507
208
187
139
623
973
427
396
773
956
477
16
924
199
73
347
576
954
926
222
953
344
517
6
567
640
691
999
80
992
390
379
392
327
191
663
820
627
826
377
107
550
708
604
525
840
845
72
412
625
745
795
344
822
713
338
138
836
420
53
704
683
433
69
76
278
177
8
277
534
773
975
264
90
965
202
135
297
269
822
630
219
67
234
264
573
456
856
495
434
230
210
336
296
193
713
795
376
961
835
25
422
540
685
822
812
329
192
151
367
288
455
542
547
59
442
532
899
717
85
399
136
202
351
587
946
823
382
257
914
839
660
342
619
777
812
326
433
892
606
860
390
669
688
850
316
346
540
827
297
44
335
952
421
857
555
416
655
27
373
250
218
849
456
785
481
496
636
376
121
263
362
271
604
436
665
582
523
282
620
761
82
419
312
517
76
629
312
922
866
881
2
427
185
897
970
758
311
511
870
372
921
96
249
930
857
910
839
712
285
692
966
483
316
124
795
285
682
543
815
220
518
119
144
974
978
262
334
438
651
253
937
644
574
464
985
274
477
747
485
553
271
216
402
845
286
465
503
418
155
711
640
866
106
547
329
978
383
797
387
927
901
967
396
88
345
936
635
688
645
67
439
951
872
210
712
435
514
30
179
403
938
103
491
873
528
516
856
789
95
110
127
436
803
530
213
632
318
489
246
78
931
315
361
930
811
817
646
234
136
40
42
308
52
463
294
806
403
836
195
55
574
908
553
174
16
512
118
311
372
703
15
735
604
656
267
172
726
100
776
580
606
862
857
336
999
804
903
54
776
366
638
454
764
986
640
356
360
872
682
993
324
208
613
711
111
145
841
679
346
420
658
102
491
162
744
947
31
557
471
929
922
885
501
666
241
312
960
454
609
617
25
778
173
976
823
225
978
23
208
446
870
5
739
869
339
94
583
965
238
863
439
566
10
794
314
515
778
582
515
540
867
458
261
511
532
371
609
982
442
820
994
258
593
927
519
788
556
389
471
735
196
304
312
568
811
424
677
801
271
77
720
919
421
871
551
771
191
305
730
194
163
112
116
729
652
753
749
751
375
167
116
500
607
862
550
926
344
948
46
442
740
355
438
468
409
270
626
258
24
934
444
876
561
258
567
51
175
529
42
599
251
924
814
886
947
673
920
469
896
164
536
114
194
440
301
895
510
699
996
571
859
73
670
709
743
946
408
167
302
331
686
965
409
786
50
232
13
213
580
77
52
808
770
891
877
491
839
476
132
518
855
74
270
841
156
816
856
83
763
323
90
216
694
149
834
699
660
832
656
52
374
275
555
192
989
708
553
38
467
613
336
82
983
19
571
972
119
414
997
60
924
941
143
145
453
687
64
300
176
935
868
750
353
488
653
458
285
151
747
607
53
155
743
720
993
479
212
797
261
926
982
296
730
804
410
267
154
188
251
49
592
658
700
328
596
294
801
539
185
314
979
722
375
491
702
660
42
698
875
826
22
29
136
848
548
736
117
377
214
774
468
960
49
952
597
86
969
40
512
527
471
582
221
289
415
917
22
193
507
23
184
837
131
465
767
176
544
879
575
663
186
881
160
408
415
556
91
701
598
391
482
687
472
910
610
944
786
827
794
977
860
697
552
894
312
762
215
326
995
285
639
890
34
706
678
803
613
123
918
653
184
984
696
626
945
685
731
96
171
367
514
428
950
506
914
325
105
190
248
199
781
210
523
805
106
368
18
853
583
736
522
800
513
149
905
138
494
561
687
331
807
865
628
409
61
576
850
665
925
819
597
563
16
580
71
212
347
9
881
484
800
938
894
240
102
221
327
212
995
899
356
480
982
851
677
720
505
557
238
846
64
232
557
201
311
37
922
684
801
915
551
568
315
159
771
158
234
354
519
892
315
216
550
53
253
994
684
541
56
724
367
878
133
279
399
986
410
275
912
329
498
107
615
362
441
263
482
437
263
595
313
679
252
549
246
75
509
685
499
588
275
321
719
875
97
261
447
505
588
960
109
445
240
295
650
792
666
36
212
412
953
603
561
936
868
729
545
107
319
412
220
957
893
179
185
749
843
447
127
438
483
619
964
60
319
973
982
858
380
442
681
235
977
234
562
482
386
254
632
973
216
126
944
250
915
701
217
551
328
512
161
769
299
229
338
832
963
940
974
824
584
398
864
72
922
258
912
953
670
68
833
391
658
844
35
597
328
959
380
204
810
241
535
755
374
558
285
659
404
443
788
469
834
351
671
766
899
184
937
860
456
30
381
182
636
914
717
174
793
500
388
946
714
913
385
215
787
825
115
846
525
933
17
577
32
30
704
45
164
961
722
792
550
791
785
585
916
746
596
300
436
435
876
503
331
651
554
906
334
2
135
933
366
632
943
865
720
765
761
989
136
298
245
484
690
676
501
622
512
219
790
583
78
663
706
946
751
500
884
704
57
275
760
297
756
34
578
377
959
309
528
16
752
10
882
951
722
513
595
825
165
450
37
993
586
98
263
58
793
929
926
497
36
615
824
933
757
595
502
26
867
303
994
82
362
699
519
128
174
350
291
856
283
264
553
456
741
45
375
169
6
773
565
588
379
278
382
353
118
279
410
14
230
271
248
198
213
329
902
90
243
624
285
157
556
600
131
754
555
176
501
497
15
155
267
198
281
428
911
594
964
609
527
568
470
549
814
108
734
552
491
257
804
456
290
502
502
3
338
218
862
264
852
633
289
933
602
626
90
260
317
722
633
432
355
106
668
303
936
570
46
836
668
962
425
33
19
815
949
322
457
146
384
971
24
710
517
828
530
887
488
282
297
884
993
348
825
351
332
277
680
820
976
496
392
592
996
631
660
5
731
592
973
57
754
788
840
973
58
384
658
525
608
865
601
248
157
316
516
147
625
57
337
845
677
987
143
91
128
110
240
110
734
84
562
619
707
597
50
615
38
616
614
943
262
667
316
877
198
722
883
145
597
435
296
387
840
595
529
175
392
18
219
936
242
444
168
672
427
169
869
198
554
774
334
673
301
745
150
499
577
476
569
273
301
412
579
41
709
651
891
804
746
125
98
650
305
928
393
382
986
422
159
353
800
123
971
366
811
809
949
363
37
303
296
517
554
319
907
264
240
634
797
805
559
894
82
682
676
792
343
495
604
390
197
296
97
330
393
168
639
302
954
909
870
321
853
795
497
915
601
798
939
372
971
812
973
938
515
994
888
188
469
766
139
456
110
860
592
703
881
849
252
801
709
808
602
423
783
557
430
211
994
195
643
290
83
95
482
10
549
221
714
308
441
432
823
165
918
794
283
180
206
603
13
430
605
342
204
520
627
549
365
734
857
919
970
643
496
845
909
789
918
250
757
88
495
326
810
502
604
329
637
743
928
330
778
947
479
24
641
624
419
514
906
717
318
481
446
147
796
337
514
11
826
231
277
801
481
560
920
913
166
43
284
22
625
676
263
753
236
200
700
533
559
325
504
264
446
324
993
638
168
832
271
345
521
89
524
828
559
948
358
240
988
674
817
276
387
748
2
641
291
364
171
951
750
955
706
429
791
273
617
789
19
61
411
446
555
999
166
829
129
476
418
668
516
285
578
441
245
325
970
614
942
323
716
209
478
510
921
776
917
613
866
43
995
911
177
861
544
755
107
344
526
379
200
430
692
358
948
931
205
283
183
455
734
957
472
258
815
438
156
764
848
995
670
735
106
213
407
846
550
219
368
437
404
353
72
391
261
822
435
834
302
563
473
390
294
673
214
906
821
366
398
528
949
236
403
740
792
836
946
89
154
734
527
69
952
556
571
419
590
794
905
483
46
763
335
370
982
335
335
48
198
57
54
680
518
410
642
12
399
777
184
420
820
419
385
766
158
531
16
975
310
135
553
27
394
895
643
806
135
38
481
798
319
220
594
979
198
470
235
152
934
930
552
496
395
799
615
495
69
407
693
560
889
217
138
109
568
660
230
743
925
376
502
355
438
329
280
296
849
681
434
261
625
811
26
578
415
344
196
171
279
718
163
33
139
503
295
116
723
971
250
840
756
549
592
267
987
97
994
232
825
309
752
141
494
264
269
224
714
803
513
224
140
408
853
375
445
605
521
770
310
251
779
101
151
598
442
894
393
293
397
489
99
178
550
984
257
522
720
577
770
402
626
150
557
915
832
295
223
749
846
418
139
183
679
826
437
291
460
209
726
848
812
261
922
359
356
160
99
935
209
653
513
169
22
749
481
992
84
155
419
302
232
263
78
258
529
595
472
619
704
356
43
215
523
144
179
317
265
928
918
534
760
575
569
109
668
442
760
764
996
665
761
797
683
55
195
122
296
555
716
28
773
392
584
596
825
500
740
277
16
96
881
561
534
741
171
156
274
603
684
899
573
664
803
805
404
376
803
715
329
705
170
827
88
497
723
560
25
144
972
639
94
544
159
211
974
6
531
309
747
362
695
716
666
905
178
550
818
131
275
475
556
209
454
257
589
975
694
464
723
685
394
201
888
401
860
567
665
190
446
276
41
508
164
749
229
163
257
784
596
27
17
57
905
430
170
289
165
953
409
41
606
519
116
101
650
496
81
387
785
396
73
497
824
161
364
896
283
642
487
937
728
144
55
340
977
815
199
280
607
759
97
618
601
449
140
729
961
203
97
380
668
191
401
735
395
74
338
100
881
464
263
596
192
916
656
983
222
891
860
321
931
378
724
123
802
153
770
825
148
497
121
886
469
630
178
441
19
931
503
99
895
369
879
316
589
273
602
192
451
787
796
709
712
294
31
941
469
638
33
65
274
324
630
861
846
425
375
568
750
640
388
614
651
41
763
924
244
563
63
611
267
628
772
145
373
611
359
784
431
415
26
572
311
138
552
921
884
790
317
23
998
138
364
886
282
906
516
264
970
169
43
880
116
513
222
143
911
316
981
801
37
606
273
605
268
854
594
678
495
94
923
478
329
419
230
979
536
768
945
349
823
449
64
754
955
430
928
708
64
954
513
686
320
941
824
716
512
427
645
790
582
292
186
356
421
712
612
13
444
952
240
88
542
854
936
734
912
20
86
269
89
79
105
721
427
840
833
703
496
859
785
654
473
790
490
453
151
380
444
549
663
144
919
348
864
750
296
446
235
3
583
190
449
57
352
766
228
114
463
803
580
405
104
209
866
780
541
277
902
428
182
76
226
713
510
508
121
824
865
819
731
812
56
417
142
743
730
204
413
749
332
806
876
623
852
448
746
541
73
586
978
279
897
546
894
626
930
744
131
994
795
842
440
720
835
722
183
844
725
959
504
921
90
564
415
767
563
794
894
29
399
367
526
960
170
348
266
842
225
17
694
941
292
554
721
339
110
633
706
459
733
336
747
188
71
75
955
506
365
657
593
623
275
483
389
756
957
73
23
917
497
544
440
776
562
119
148
577
781
355
544
529
326
394
778
590
846
20
321
259
893
938
145
759
396
348
832
26
612
99
938
382
24
856
268
659
194
26
654
517
750
650
544
866
551
327
797
865
333
356
758
763
218
802
709
774
153
360
849
542
127
576
662
518
816
526
169
813
494
31
498
863
222
295
975
841
572
212
753
353
260
828
684
323
71
592
470
633
20
565
699
337
896
39
363
466
649
670
964
176
270
241
300
963
230
631
339
197
533
244
471
316
26
177
195
74
334
308
694
351
140
978
134
341
676
743
271
95
264
581
300
701
428
868
428
456
875
803
181
941
933
517
290
221
227
151
396
295
841
458
988
248
888
524
702
80
796
102
541
669
594
668
894
78
659
487
429
649
942
727
642
794
519
922
773
954
128
781
146
914
275
991
369
80
495
307
63
678
910
655
970
833
311
445
228
590
377
395
420
29
738
748
500
340
85
408
745
118
440
323
68
544
454
559
768
877
400
95
174
575
843
872
189
313
342
279
297
671
378
305
52
638
213
537
505
715
520
16
312
181
416
522
720
827
846
465
439
542
513
470
197
403
160
569
540
122
552
327
83
891
382
717
147
67
726
48
370
843
688
389
711
618
795
667
939
513
662
244
469
236
115
178
381
159
821
71
481
962
716
303
893
160
255
71
877
840
760
252
166
647
665
913
793
540
774
196
188
485
161
263
920
589
504
384
765
145
711
244
930
992
847
388
419
345
91
749
159
949
819
257
149
258
460
70
791
389
217
899
594
3
763
458
449
654
235
950
69
351
748
688
908
811
959
826
264
863
432
352
205
129
284
378
808
413
804
232
9
917
524
782
682
43
310
10
242
152
557
461
880
381
254
461
777
758
608
906
881
961
538
959
979
35
705
617
262
699
227
120
567
409
732
182
4
597
428
858
714
160
188
477
818
294
55
377
808
42
620
499
212
842
203
993
799
49
470
862
255
130
241
393
313
164
469
664
990
387
657
716
515
934
126
602
26
175
602
791
605
554
840
121
264
244
205
24
399
607
750
566
743
984
610
629
142
130
797
384
227
535
956
382
127
665
9
54
191
168
7
585
395
117
906
239
383
453
801
834
138
749
405
420
507
249
576
954
59
734
225
256
66
273
973
61
357
564
406
898
106
525
429
982
653
142
717
311
644
75
478
522
41
142
876
48
725
233
686
989
194
290
269
828
556
411
163
509
688
226
372
139
70
864
814
980
421
977
947
368
132
827
52
89
633
323
599
796
388
796
842
663
539
821
541
176
985
638
101
975
941
494
862
742
196
731
511
419
757
487
235
923
309
329
927
451
704
170
580
889
646
949
131
743
727
11
583
423
241
740
45
679
724
329
70
816
387
615
902
146
434
352
666
514
13
866
870
919
948
661
506
310
403
886
21
150
725
529
347
288
435
948
542
84
22
255
826
158
761
627
306
640
179
232
541
868
413
837
834
362
178
893
248
374
265
933
814
680
204
556
344
929
446
845
94
8
344
302
391
776
131
483
956
839
957
696
408
783
273
23
558
389
336
906
523
421
853
169
849
684
530
663
818
589
791
107
10
54
895
743
736
77
388
707
604
472
94
158
225
876
714
887
926
427
183
389
779
217
908
575
590
335
987
170
863
424
991
338
584
310
647
194
916
34
339
56
590
559
187
836
683
954
847
334
435
247
231
602
796
454
376
692
407
720
820
565
991
78
24
235
320
979
167
94
808
314
800
549
813
251
773
910
351
961
964
661
225
633
711
677
299
955
513
28
366
414
291
95
844
287
698
934
875
299
677
116
596
325
7
324
679
583
550
167
671
904
85
747
330
304
670
569
347
975
367
97
603
218
351
733
578
774
300
950
567
405
743
676
796
21
96
590
868
956
364
87
304
61
116
269
980
403
869
965
782
72
525
516
747
999
173
328
450
251
411
219
646
182
802
233
528
281
593
273
652
241
842
466
21
226
682
777
644
319
616
128
819
362
777
317
953
970
749
885
639
471
934
994
85
763
525
289
821
918
438
963
83
795
628
856
586
983
705
392
946
457
742
659
645
162
674
897
832
13
46
605
705
120
829
584
226
792
366
32
602
111
162
189
174
991
25
840
617
253
183
764
938
882
927
910
625
121
219
606
562
419
810
984
339
239
495
356
151
320
962
229
554
419
432
883
432
466
60
124
233
676
912
313
373
699
322
421
54
814
798
817
100
188
546
946
468
752
952
168
704
75
747
749
948
304
753
666
823
827
977
319
708
899
566
402
543
520
36
510
122
698
939
354
638
984
749
93
244
566
822
637
501
236
289
733
394
869
20
338
88
308
477
90
171
515
575
658
989
947
956
301
451
440
300
95
728
658
691
447
218
632
260
826
576
813
460
544
38
360
885
921
160
946
525
180
101
907
769
901
346
334
164
916
380
734
749
751
321
310
425
211
642
606
773
403
343
976
102
130
771
713
195
777
127
815
546
138
666
332
22
676
686
642
355
753
247
640
357
560
971
8
840
219
55
62
913
725
584
234
151
587
891
757
376
556
415
711
708
852
63
28
45
410
93
524
552
74
361
508
169
855
815
86
549
918
378
509
241
841
770
704
23
808
70
306
965
604
619
780
881
816
256
709
544
169
121
710
884
414
760
11
197
377
121
72
911
770
710
560
534
387
518
278
570
493
457
369
29
250
106
191
546
559
114
247
300
453
115
353
39
89
238
963
105
321
833
878
666
246
454
812
314
195
278
926
394
641
250
512
828
584
491
670
286
283
806
331
465
473
747
591
883
95
212
201
300
264
65
782
474
572
472
597
560
357
269
571
356
596
266
722
118
59
822
675
167
582
434
24
628
803
209
414
760
249
823
769
894
884
795
688
369
118
108
575
461
945
86
995
445
498
879
864
863
472
401
217
728
476
164
78
858
543
191
413
77
198
408
135
650
642
305
301
182
597
728
120
14
979
291
752
885
361
808
794
199
882
131
289
771
876
455
377
400
746
837
916
726
449
304
290
505
379
16
868
647
645
764
911
915
799
389
437
406
333
557
767
650
134
327
312
458
895
170
215
349
805
923
903
169
10
571
343
759
823
16
356
391
275
703
603
274
52
477
823
772
921
741
33
412
913
385
601
999
302
844
782
675
213
394
646
861
193
714
298
617
199
883
245
627
473
809
423
656
964
244
547
110
899
112
718
226
536
403
785
850
222
650
86
812
952
404
490
498
177
226
699
692
626
816
293
970
860
306
702
25
378
881
454
66
340
504
575
8
133
288
529
118
139
158
925
898
10
234
526
626
164
838
289
769
430
773
530
122
459
561
346
937
506
265
26
466
44
593
47
437
281
215
918
210
315
683
442
61
974
816
102
192
201
65
740
906
613
241
605
853
27
276
464
30
384
335
646
802
446
560
446
121
131
774
925
208
877
42
190
501
991
520
509
493
191
222
764
961
316
78
101
62
633
218
735
729
502
342
977
695
419
244
566
217
203
976
32
151
160
873
671
723
720
451
121
558
757
432
285
505
682
743
194
234
476
852
330
587
950
300
689
537
547
717
883
42
792
517
117
276
715
500
351
580
838
383
974
102
865
797
528
194
180
911
152
479
696
158
887
82
434
821
854
733
212
680
52
275
267
239
841
340
817
784
490
788
836
38
793
418
828
566
233
981
609
236
227
889
37
998
902
546
917
777
447
922
486
353
155
969
872
614
38
436
664
421
284
490
436
694
405
792
310
156
308
894
172
676
501
992
979
428
263
464
645
452
67
8
97
456
436
972
814
672
876
780
781
563
465
837
341
745
933
86
868
461
981
198
17
265
35
914
999
328
627
733
678
151
697
129
674
752
190
180
363
195
200
624
25
265
201
816
221
321
875
44
723
513
636
694
887
59
200
258
464
930
664
928
840
291
361
69
666
295
355
713
141
906
398
493
74
882
312
871
345
507
202
990
803
309
443
169
133
286
469
503
508
994
990
696
713
746
361
176
904
511
200
864
443
608
113
159
960
922
69
817
70
384
128
260
261
538
786
467
660
108
385
359
353
166
922
16
483
212
139
216
803
632
822
923
39
623
584
580
414
686
446
255
48
525
375
643
917
360
144
214
632
23
794
850
615
277
53
911
612
589
181
822
996
119
426
270
153
827
349
148
51
624
562
573
485
596
348
505
421
24
897
946
608
668
789
833
287
415
240
686
465
141
585
373
691
580
532
351
785
434
544
709
557
97
568
845
759
349
535
150
593
105
888
797
25
959
15
295
859
941
767
245
266
62
128
730
933
571
403
595
979
774
507
918
573
439
132
860
323
208
927
468
607
813
618
342
145
716
952
587
299
890
619
631
382
227
418
730
263
323
925
817
561
235
450
316
175
591
892
325
314
373
480
126
366
83
599
212
687
465
435
330
408
409
538
462
52
299
654
492
420
612
204
864
287
803
827
647
99
764
619
337
492
788
426
833
804
395
640
37
83
326
843
837
171
583
665
256
35
346
350
947
472
872
470
741
597
287
917
399
801
365
258
28
152
921
912
288
990
283
886
649
103
10
253
425
443
348
228
619
125
104
358
166
788
651
494
551
584
61
948
805
904
793
312
82
690
701
591
959
813
706
879
829
473
708
561
343
811
165
316
776
224
168
533
327
302
565
757
808
134
995
463
581
89
692
525
67
82
127
293
447
634
504
867
649
794
913
950
104
419
407
950
90
168
671
569
44
433
864
243
905
897
347
253
373
830
702
191
36
192
864
910
989
340
86
420
918
736
653
203
301
775
848
703
914
810
920
862
238
285
885
94
838
648
2
777
421
222
669
834
556
625
697
888
749
341
543
273
471
995
140
996
944
150
92
311
677
321
914
141
855
297
878
961
535
142
876
620
146
311
337
122
540
118
342
575
326
253
313
588
72
937
637
808
93
694
455
126
259
942
148
158
954
95
913
164
695
293
288
592
383
611
392
263
295
601
442
564
112
358
252
938
889
883
994
544
773
818
679
477
860
178
595
416
204
579
74
209
76
431
920
716
978
215
874
521
380
82
728
409
338
703
23
388
195
821
103
399
923
150
99
89
704
373
275
306
918
49
520
178
178
508
499
941
126
706
616
280
38
59
452
660
429
220
745
315
653
921
374
763
340
368
582
83
694
601
743
389
846
762
100
604
984
641
708
5
138
915
794
592
178
76
414
326
961
587
165
126
419
869
40
954
141
583
897
727
315
208
858
914
777
360
481
26
908
560
759
964
325
309
682
925
663
119
89
733
127
261
606
275
676
362
215
949
454
772
312
442
115
744
314
244
79
185
533
82
974
428
757
734
408
88
490
61
775
447
260
383
250
983
801
211
857
941
88
685
778
495
157
740
702
690
992
556
930
560
147
818
2
206
336
160
969
136
434
443
983
711
164
118
779
736
587
158
85
173
876
792
308
247
817
160
120
900
113
54
259
617
301
992
61
635
342
851
902
415
586
895
477
128
198
388
40
230
196
693
437
440
386
52
931
114
149
316
2
67
973
901
543
552
293
595
487
382
670
531
911
599
135
961
276
228
506
901
550
765
608
733
748
13
341
72
688
575
969
300
444
766
770
284
727
41
230
569
651
609
584
696
360
818
780
547
974
61
469
335
360
396
292
477
574
45
951
129
959
817
319
345
671
398
673
569
313
515
171
95
781
919
627
156
438
902
792
949
131
50
101
333
608
801
701
807
920
480
950
814
130
441
11
395
633
508
375
543
844
140
464
972
971
283
481
748
396
682
942
457
758
991
81
46
606
551
29
886
847
904
402
719
845
966
717
691
305
251
495
336
741
228
698
797
297
663
985
729
186
438
978
744
641
580
771
85
211
364
664
436
428
783
442
624
311
99
559
611
510
426
423
492
865
945
366
834
785
327
743
605
343
993
584
298
897
24
949
228
865
68
779
867
284
807
475
309
404
787
627
142
15
378
811
412
633
127
187
199
640
710
127
585
160
870
79
652
874
124
973
860
331
943
894
804
361
755
71
255
675
305
473
282
329
233
456
49
874
673
729
142
747
325
277
731
893
240
866
987
828
414
525
176
999
603
969
630
794
939
982
857
316
732
417
338
878
267
210
519
54
756
289
661
286
869
583
700
762
305
663
210
926
38
827
140
96
729
881
922
270
644
8
624
998
902
466
539
480
999
698
871
986
446
341
295
944
397
844
857
391
198
41
535
159
939
221
429
561
449
955
48
608
491
953
818
127
403
933
60
734
337
458
348
419
26
300
178
968
731
565
102
82
240
121
376
758
680
772
943
221
226
330
147
343
653
110
833
706
565
823
556
730
391
994
954
506
732
645
130
294
975
703
762
505
568
130
949
372
666
637
526
766
758
210
60
112
306
526
451
948
801
997
267
882
565
354
115
628
931
186
545
480
463
690
533
126
698
417
901
485
279
465
748
629
893
818
488
443
491
570
325
654
154
68
798
902
947
944
5
405
970
69
562
823
384
108
502
942
789
264
94
585
24
267
975
620
851
158
366
304
752
988
755
531
770
883
889
517
713
308
841
612
165
355
159
832
354
612
343
562
649
360
197
768
398
738
989
533
279
844
278
217
341
640
169
678
726
334
231
657
333
168
370
105
564
168
321
102
410
918
889
48
227
14
428
372
46
46
481
557
421
296
530
954
756
20
307
838
33
593
386
651
579
408
475
682
652
579
661
325
125
246
370
921
374
346
506
202
875
967
148
454
301
428
907
210
410
215
168
535
452
358
248
298
714
342
134
19
557
676
263
737
991
121
13
835
56
480
108
682
974
774
904
592
555
499
191
40
986
164
850
72
226
219
404
401
881
680
250
912
505
666
373
833
297
354
310
435
334
511
154
829
671
577
548
346
96
240
100
587
393
435
517
902
568
725
710
786
929
998
586
848
215
320
233
490
387
968
525
762
99
534
949
183
784
174
386
963
649
604
609
534
976
495
106
334
173
847
3
787
730
7
329
829
436
843
615
304
765
311
793
834
264
555
675
614
811
735
632
190
894
8
963
29
912
55
712
612
621
355
280
647
903
764
51
300
969
973
622
971
676
88
590
805
692
172
795
889
8
934
518
356
959
965
528
676
563
945
817
610
348
959
802
812
148
794
647
351
585
358
916
23
525
980
240
369
486
262
774
474
65
196
112
927
257
203
57
613
99
970
741
135
491
186
716
465
263
864
772
28
531
477
605
208
382
949
817
255
519
742
664
186
647
150
732
609
128
665
571
764
901
708
165
712
675
240
600
357
659
798
859
803
666
567
74
876
780
775
41
335
390
112
652
63
303
275
906
903
133
966
90
848
32
178
197
369
861
702
602
180
165
35
834
253
79
454
200
422
426
577
327
196
537
431
795
745
459
623
679
605
342
765
651
725
770
511
399
351
564
629
455
460
349
674
924
227
840
909
8
601
302
297
995
949
5
396
833
21
616
629
235
238
121
830
709
941
801
545
630
298
136
125
308
539
702
521
933
514
585
280
289
720
63
32
921
733
779
915
379
381
523
939
977
287
762
517
164
645
940
711
674
929
282
253
565
773
480
64
343
340
246
612
311
507
256
370
992
938
542
965
168
72
927
560
99
546
53
452
953
349
337
927
478
594
520
963
627
168
453
457
867
422
451
822
229
739
858
204
963
244
86
117
252
695
202
80
319
857
315
162
80
562
125
562
974
22
746
701
9
307
397
467
91
319
243
516
913
127
459
706
26
968
167
994
219
575
677
133
552
4
945
4
11
698
765
172
178
395
532
487
440
129
785
663
66
997
473
416
290
871
248
923
300
183
103
457
312
623
864
863
927
194
890
132
880
267
134
915
592
381
477
408
329
181
774
399
501
573
513
719
777
25
856
399
554
147
291
671
911
26
603
676
653
429
851
998
152
35
294
504
748
296
112
734
734
151
790
776
994
522
722
665
418
787
770
766
405
492
607
312
978
29
786
415
76
161
121
563
113
610
331
135
387
708
492
413
458
381
197
626
136
885
256
721
923
989
777
80
433
230
474
214
822
791
860
730
288
66
118
634
990
71
42
304
917
277
453
64
983
169
328
551
153
992
660
71
437
430
674
235
359
271
789
612
147
464
988
383
213
846
474
55
303
872
806
614
257
61
332
612
492
264
480
10
218
535
840
552
163
673
67
440
209
118
295
139
317
890
631
872
830
296
184
67
40
363
644
654
927
790
37
279
108
970
565
96
57
255
499
269
976
909
992
750
303
250
275
978
656
141
115
522
500
979
977
134
474
658
301
845
925
673
450
322
91
235
488
899
814
776
150
127
361
517
682
979
602
409
677
278
751
38
70
644
451
825
361
926
609
938
574
115
337
984
108
566
871
964
657
655
776
274
512
898
236
209
793
888
907
642
718
963
968
290
299
613
225
883
572
163
509
16
69
746
276
968
130
185
927
944
177
638
814
327
300
792
749
580
549
411
992
32
85
287
206
65
40
975
371
889
201
147
158
337
330
923
566
70
561
619
335
56
550
511
439
261
723
947
347
624
626
414
165
106
37
378
647
122
128
791
68
910
98
890
771
158
72
249
303
568
12
56
719
226
231
833
758
10
332
853
534
405
789
340
869
297
330
756
988
704
896
704
435
21
990
22
443
122
483
536
753
984
538
685
112
211
933
597
25
624
805
914
650
682
443
43
886
224
293
950
869
37
316
241
745
434
633
520
27
658
881
233
637
242
400
247
114
527
478
189
577
751
532
658
72
115
93
420
416
258
97
684
119
550
962
121
733
553
740
6
226
854
962
985
839
277
445
622
265
770
208
315
715
345
699
360
597
382
360
819
305
501
805
331
614
950
711
327
972
694
796
131
878
783
311
728
59
497
959
341
497
299
748
931
631
883
342
715
176
596
359
614
229
186
202
554
160
365
767
383
101
754
936
303
620
597
15
71
615
49
49
582
296
265
101
774
901
658
240
737
609
224
59
140
996
730
815
662
928
59
390
476
151
110
709
30
378
309
746
282
917
579
989
641
842
495
178
297
265
298
918
391
951
480
24
22
925
452
666
344
96
469
554
145
326
345
498
400
116
806
644
458
225
106
286
295
766
485
352
995
889
604
830
439
678
513
177
481
712
367
384
850
717
274
996
769
924
137
481
533
327
872
632
991
503
944
840
317
761
239
218
952
58
432
830
563
878
30
18
349
495
242
276
545
211
749
327
607
681
278
477
861
992
722
203
820
964
746
948
975
527
131
203
974
711
390
176
988
40
946
336
520
350
549
102
432
3
438
232
806
239
150
729
738
472
306
744
325
621
425
968
872
31
800
389
448
106
595
702
472
607
137
514
463
628
73
846
712
809
834
455
237
861
983
346
876
696
965
395
801
113
482
632
272
117
476
357
592
916
359
136
594
728
123
630
577
886
540
272
354
298
819
187
579
190
519
116
135
599
834
188
823
729
932
761
395
694
475
378
103
226
841
937
684
111
39
608
399
211
977
268
63
445
685
134
264
355
628
904
143
765
169
184
854
231
172
108
832
220
801
24
928
893
684
700
892
391
163
452
464
715
994
110
630
630
313
467
231
138
451
630
541
143
782
189
227
901
890
808
656
847
546
98
513
117
175
87
794
267
642
972
135
353
115
433
576
510
332
842
110
131
232
191
225
253
938
619
995
568
205
545
552
166
108
634
423
570
219
785
188
324
598
148
407
397
488
196
106
97
3
9
501
967
481
650
805
322
103
958
717
655
28
3
967
816
901
53
85
91
581
194
712
686
396
260
857
47
509
602
354
237
419
123
842
236
990
888
748
541
961
50
294
207
179
561
476
12
467
395
180
723
837
387
698
887
543
136
926
168
462
630
934
79
556
958
919
422
277
283
751
745
76
403
269
643
598
137
934
535
879
417
436
658
248
934
109
313
128
263
287
989
804
539
280
887
179
22
105
10
771
492
566
606
30
527
494
79
242
171
106
917
230
10
592
949
533
304
559
280
984
489
435
920
562
567
266
811
962
478
500
361
377
188
780
461
580
64
811
329
518
541
164
701
678
170
577
531
431
221
43
162
138
881
207
69
198
979
489
435
880
716
509
391
13
915
846
466
73
981
807
370
327
322
569
402
677
677
385
968
628
637
38
352
261
27
124
945
502
805
767
679
906
724
178
396
25
51
364
410
986
447
113
296
180
735
827
125
262
676
650
332
613
732
69
294
929
720
569
734
110
978
198
568
595
277
307
971
378
496
288
349
849
864
308
444
533
241
760
775
187
920
895
882
110
879
41
131
359
48
989
10
749
433
394
549
651
614
999
555
803
755
789
110
530
317
953
211
340
915
604
931
482
885
430
378
279
111
958
279
316
908
849
423
835
255
676
438
349
826
763
162
156
123
163
960
898
254
837
719
359
98
550
536
815
284
490
859
633
569
832
307
372
340
867
296
90
591
217
632
223
644
757
657
954
386
201
830
871
470
713
386
670
159
25
111
827
342
431
669
815
742
417
947
410
230
257
781
40
473
704
768
330
20
190
896
202
981
616
948
948
584
711
565
731
309
32
248
242
367
690
382
277
375
895
124
699
412
196
985
511
141
554
90
42
437
611
631
993
195
23
696
318
310
231
995
758
607
551
742
738
577
329
283
492
462
452
742
784
540
609
473
49
563
488
855
919
126
903
868
607
249
190
384
95
161
186
725
99
880
468
86
254
201
869
820
234
565
73
558
188
684
284
250
665
147
67
108
555
775
737
190
195
535
292
874
610
524
541
776
908
833
764
626
938
229
602
208
916
463
666
438
215
378
313
996
226
96
752
354
669
451
96
703
818
556
745
666
594
809
550
542
989
395
574
854
769
525
641
46
445
453
360
178
442
519
922
836
895
463
564
575
931
549
249
453
993
933
658
257
271
178
668
359
814
7
706
255
352
87
635
99
675
136
999
871
515
705
133
514
682
564
159
932
939
896
658
405
494
681
729
356
412
184
949
301
632
868
563
737
981
945
863
595
524
457
860
305
296
463
819
503
290
960
784
761
807
985
354
524
775
19
224
642
380
464
558
151
458
497
514
303
594
755
545
999
100
459
372
644
749
563
360
892
339
281
241
374
26
577
202
827
890
498
269
878
446
138
469
277
250
819
48
681
132
389
142
489
688
340
642
419
610
422
130
106
225
683
154
701
218
921
719
578
861
731
512
628
109
866
146
304
908
347
635
320
802
63
285
177
900
678
10
438
859
223
436
51
286
481
386
982
109
164
106
227
379
281
714
240
209
494
857
308
807
708
565
315
300
963
276
673
386
462
371
863
977
167
944
479
150
808
317
750
609
283
536
869
473
46
397
645
389
114
667
705
473
611
336
317
632
308
394
748
508
787
556
799
606
508
279
846
846
863
680
705
642
84
656
754
562
434
282
613
788
402
344
994
882
202
88
492
861
942
747
484
967
670
956
53
685
619
739
226
541
307
417
428
899
694
188
226
102
590
940
344
542
899
541
630
711
42
636
510
629
316
215
225
337
754
799
344
15
717
658
900
74
808
663
294
626
553
325
771
273
413
725
332
115
126
4
297
638
25
40
628
523
798
824
713
706
791
210
663
35
956
42
20
316
269
231
352
201
553
200
578
552
840
761
159
694
486
581
200
905
687
993
23
341
53
960
707
32
711
157
686
284
441
698
361
362
197
640
509
290
560
683
36
210
969
515
831
817
958
764
522
787
790
90
611
324
293
542
508
592
253
662
330
199
713
947
869
190
127
924
831
194
525
150
904
809
731
354
443
776
841
450
530
558
116
710
550
394
768
327
677
774
578
249
589
556
339
695
664
194
154
760
109
518
857
115
696
965
97
270
402
850
937
359
685
691
915
676
341
118
944
794
406
789
889
570
18
435
353
725
769
845
370
945
626
663
817
179
808
667
404
408
759
781
475
885
188
993
506
99
443
263
916
941
434
274
691
119
685
263
677
350
79
38
104
373
109
355
699
202
954
963
940
189
164
344
871
228
978
897
448
599
690
53
964
560
981
834
20
946
350
31
428
585
902
276
318
731
213
783
270
519
181
288
279
751
371
622
589
119
166
79
575
996
692
915
731
442
644
984
97
473
903
679
485
25
713
871
282
768
86
481
42
274
387
420
536
310
143
154
281
568
113
858
572
358
59
252
903
845
303
130
613
945
628
630
919
730
312
947
796
499
976
931
54
569
141
266
305
863
426
471
674
332
656
613
968
596
820
769
668
76
697
289
125
300
454
958
241
538
222
471
174
441
274
152
318
182
677
563
353
332
704
633
941
185
369
317
596
659
174
655
302
993
678
774
209
240
255
423
138
11
275
541
985
523
988
838
42
310
242
900
684
601
429
995
158
798
149
240
951
35
3
958
542
274
621
579
359
898
756
515
318
997
597
847
979
558
547
762
285
573
103
319
118
465
715
517
648
800
79
6
661
736
790
567
332
58
794
356
493
433
734
764
17
899
438
189
469
298
695
948
859
184
656
454
135
498
658
506
544
100
55
672
14
420
498
495
302
487
715
243
609
880
449
307
733
85
468
308
886
508
782
323
212
210
813
520
31
263
455
432
15
290
265
679
592
821
858
247
675
633
463
545
623
999
550
635
741
67
196
848
351
29
341
422
833
618
811
672
41
332
552
172
270
255
121
762
380
654
130
593
337
344
687
611
674
982
887
652
386
610
952
624
786
371
12
233
826
932
920
535
515
476
234
268
741
467
98
675
757
211
341
574
433
903
289
127
309
250
69
136
789
48
263
229
372
271
27
487
642
147
940
512
50
676
465
694
890
108
202
658
78
491
810
423
408
672
221
140
928
978
376
641
120
980
207
474
785
697
71
132
752
52
522
90
406
69
760
456
806
30
474
667
90
557
331
70
737
575
451
21
126
973
426
538
840
65
564
502
602
786
69
506
709
184
156
797
79
665
925
605
804
449
175
235
996
896
920
808
257
940
928
914
52
680
857
116
156
757
776
430
259
289
323
922
748
732
615
17
365
131
530
962
159
601
830
362
524
835
315
626
254
962
466
912
526
308
858
833
632
687
177
107
802
437
878
885
440
746
673
300
824
905
312
33
533
444
814
405
260
450
664
95
986
641
918
681
694
15
752
162
302
766
29
375
63
907
564
38
128
214
792
526
296
610
143
437
232
216
15
915
146
959
804
769
640
627
980
444
235
490
134
403
781
333
268
77
134
149
681
647
220
83
337
982
795
960
67
939
466
784
627
171
502
819
695
128
27
379
905
193
559
664
5
703
492
513
553
201
338
442
944
543
261
350
487
772
422
123
712
361
194
288
946
974
537
618
666
485
652
666
6
788
346
884
481
400
399
349
370
718
195
59
94
300
104
736
236
39
179
164
543
111
427
349
981
634
74
638
436
272
188
542
584
911
426
472
676
163
89
627
132
705
16
801
903
608
289
880
188
283
971
236
22
431
104
463
370
223
696
784
669
960
665
292
474
669
596
676
499
672
724
438
175
716
260
83
681
396
163
694
681
572
155
340
476
57
772
777
181
69
71
922
350
663
636
406
908
625
195
213
816
392
388
956
804
636
832
78
48
624
349
414
581
851
427
781
308
997
37
890
456
986
498
290
936
721
290
540
746
426
125
203
387
228
993
22
774
555
705
847
325
814
674
80
613
533
926
389
237
29
361
24
717
670
316
668
974
859
60
153
878
138
691
893
109
167
996
703
443
845
111
270
406
402
831
161
145
960
606
145
922
634
9
188
755
34
647
407
607
457
348
615
347
763
723
22
123
44
370
816
903
918
944
275
499
107
226
209
132
970
907
403
203
347
224
450
193
852
516
594
933
743
499
895
607
592
407
491
589
908
96
6
560
491
734
584
253
915
743
375
593
211
904
899
930
581
661
162
716
59
133
503
254
70
519
727
204
98
534
52
928
144
914
269
811
819
435
848
176
325
12
789
26
963
582
982
962
794
806
418
22
558
792
673
418
693
653
853
128
533
498
811
525
55
659
133
276
364
10
622
546
478
604
798
302
296
18
486
589
278
343
434
681
965
559
909
538
134
246
990
511
701
670
787
429
93
860
372
955
429
463
380
961
524
765
231
612
248
630
331
302
691
548
894
57
582
830
483
843
350
882
55
464
859
328
929
526
33
165
501
194
100
223
576
957
271
802
895
757
715
983
133
971
2
125
656
374
302
817
76
941
63
593
236
708
913
352
854
584
732
666
844
905
704
616
939
315
341
247
284
623
160
345
392
554
362
332
454
809
570
265
895
425
236
788
756
995
114
440
391
326
531
599
497
156
917
800
469
460
425
286
749
554
219
49
342
797
861
604
252
642
533
965
635
351
218
987
208
406
110
743
316
737
364
284
999
496
732
54
334
338
287
760
823
479
838
437
120
773
581
411
496
351
644
900
925
540
299
223
477
788
713
496
620
28
438
463
893
665
61
717
75
375
986
327
558
953
393
884
171
271
490
332
534
358
429
733
113
80
967
969
265
375
526
450
613
848
117
618
647
62
13
375
775
511
192
723
43
371
846
73
953
569
194
38
585
43
572
225
260
900
517
569
930
378
61
143
388
252
62
808
535
235
355
479
590
993
649
894
430
622
231
369
675
777
801
308
301
551
209
395
975
595
800
626
32
242
125
289
931
236
689
92
201
904
304
660
341
171
159
573
178
327
221
725
460
360
745
368
27
279
886
846
327
531
935
427
284
230
388
319
380
439
481
513
108
424
591
83
489
640
779
871
939
446
989
92
548
849
203
981
918
723
622
802
945
629
627
947
629
133
353
498
110
214
259
604
422
129
983
595
444
491
222
339
10
819
203
909
590
893
922
650
792
246
59
457
910
734
982
174
704
241
726
262
618
340
474
904
828
619
95
866
321
46
960
12
686
383
548
235
476
785
338
496
45
678
314
176
112
230
143
701
945
799
221
388
203
485
879
387
503
230
621
11
905
774
83
851
395
832
31
397
122
495
336
716
452
978
970
6
321
887
828
703
154
326
575
61
718
602
313
484
16
897
132
251
360
694
71
138
587
534
711
825
169
277
474
197
286
515
397
923
95
71
414
52
767
75
47
377
589
739
408
88
919
150
316
431
827
606
181
990
876
486
338
659
24
796
474
996
432
821
28
580
889
690
590
757
451
587
623
647
143
9
433
384
645
935
384
768
271
170
58
712
218
802
384
849
511
321
162
255
843
170
908
429
120
326
91
241
225
802
460
332
319
539
353
240
401
193
102
260
726
648
238
707
870
90
975
611
11
108
793
846
949
931
751
178
424
515
640
582
989
593
330
5
650
321
974
500
677
518
252
480
384
430
844
564
199
902
879
430
352
411
982
739
360
292
582
377
669
734
276
581
329
739
855
651
899
604
802
867
625
917
416
954
135
542
803
36
811
438
306
284
494
811
258
943
328
518
778
494
981
538
455
628
69
494
333
271
697
175
576
715
944
743
660
557
839
731
369
10
961
174
364
526
908
620
785
559
288
624
779
739
997
698
750
152
868
965
320
307
268
394
890
781
823
214
604
836
821
565
339
446
309
650
261
309
645
845
267
760
509
372
214
907
4
752
180
202
464
404
927
88
465
107
853
59
351
316
324
807
45
219
416
556
655
411
539
278
225
684
285
881
249
550
409
305
61
532
300
214
195
973
522
622
824
273
795
700
409
469
954
553
314
728
577
535
228
295
184
994
232
54
38
170
598
592
610
222
604
22
647
377
989
32
845
934
566
245
785
319
727
50
313
345
373
811
109
401
666
858
544
899
723
968
130
580
233
666
537
964
249
545
391
644
249
390
539
590
718
731
938
99
270
94
226
104
745
830
750
924
830
108
236
627
812
197
403
829
239
590
419
302
520
816
10
357
284
87
826
48
883
985
390
921
566
458
203
217
722
255
971
573
20
822
501
917
206
816
55
237
925
396
951
622
979
201
497
586
16
217
482
94
480
289
40
360
530
932
178
400
428
971
535
837
312
485
785
655
390
220
517
425
384
204
105
658
458
245
593
187
299
760
615
877
527
627
850
852
101
389
925
137
165
46
264
403
448
918
755
602
700
931
535
34
170
887
868
732
900
385
284
787
926
464
728
464
705
300
866
597
60
581
787
177
253
210
428
53
549
818
965
21
955
734
208
47
799
824
317
9
308
882
903
176
284
871
967
848
573
145
833
168
960
711
885
549
241
38
587
57
247
535
532
844
938
545
489
258
941
132
309
699
331
469
650
995
653
543
570
538
645
294
6
97
190
820
207
25
189
401
932
518
974
297
19
889
775
843
201
331
394
386
111
261
544
626
168
856
148
159
295
571
333
974
483
136
178
288
423
762
590
854
58
863
156
476
757
127
180
501
729
720
291
962
817
211
542
77
95
859
610
186
806
865
786
806
750
165
338
820
75
311
720
78
479
841
363
397
865
207
493
899
653
26
792
533
769
824
921
428
476
569
342
621
66
183
51
912
162
949
607
948
912
17
310
792
416
644
104
359
280
26
159
332
63
822
830
766
233
731
356
943
347
74
786
482
808
857
139
913
214
931
802
40
758
483
22
969
406
464
318
969
928
221
75
76
386
629
963
194
617
225
654
63
528
618
973
78
508
727
918
452
451
367
6
978
724
473
6
795
163
631
141
138
304
794
973
977
797
135
557
549
795
196
160
84
331
339
228
676
451
439
180
482
295
861
320
870
488
590
650
269
338
788
187
495
158
70
64
264
484
717
73
948
943
138
5
369
60
702
839
671
112
622
66
608
50
87
96
60
204
291
419
148
628
66
11
326
747
571
330
268
928
789
435
177
870
256
456
355
400
498
345
357
556
240
566
674
814
696
356
495
141
576
933
428
846
456
11
985
963
722
512
305
355
269
449
473
154
985
857
653
245
519
118
14
216
209
459
11
789
734
532
304
952
526
65
838
956
818
731
150
678
595
952
909
496
383
828
224
745
456
855
292
73
273
625
519
851
435
963
820
938
565
417
869
129
213
58
918
545
857
317
955
636
143
360
935
822
637
367
584
349
400
618
572
224
427
310
262
870
949
976
972
820
756
752
324
569
971
408
354
750
867
994
358
562
228
77
741
262
474
537
727
997
52
834
83
595
644
282
623
434
86
914
547
365
375
607
368
932
150
586
775
571
141
515
653
391
672
730
34
935
868
627
69
245
808
434
370
764
419
373
626
177
225
903
63
130
83
966
845
717
60
821
403
825
772
975
90
752
337
708
506
521
299
125
351
794
804
231
711
870
627
535
101
585
314
486
700
100
49
39
756
976
311
63
759
740
830
306
3
675
859
575
390
566
629
57
563
478
556
933
907
717
221
433
739
513
47
272
281
402
839
455
219
526
149
487
596
283
456
316
506
290
177
299
672
211
573
115
564
51
872
646
900
644
130
311
689
825
553
786
387
129
97
863
594
125
864
42
581
802
252
395
289
117
388
642
696
410
352
725
626
342
910
374
642
288
737
510
767
797
257
366
897
965
998
679
973
260
23
560
460
2
562
607
195
596
32
469
119
493
861
927
563
792
349
98
13
411
998
530
736
911
629
381
800
191
212
608
238
699
419
282
463
245
672
335
424
185
119
694
455
935
558
561
558
40
426
171
968
238
9
317
448
875
769
197
350
215
38
788
720
562
109
775
205
253
443
409
988
348
325
74
337
449
226
20
133
748
375
519
713
601
9
549
420
374
91
746
956
529
775
636
536
911
875
873
315
698
750
982
641
357
607
420
235
723
469
418
160
953
650
476
223
325
687
551
405
446
312
894
138
165
72
193
732
697
851
921
483
104
615
43
133
719
713
385
574
950
740
362
639
39
323
255
438
443
880
105
440
827
479
372
784
746
400
453
977
185
310
976
494
917
363
290
221
716
758
620
932
342
603
871
161
663
72
219
513
943
285
25
643
106
582
199
220
287
233
130
248
851
436
756
965
781
486
735
519
265
189
664
421
584
233
99
994
697
92
207
350
571
8
265
771
705
568
645
389
659
689
109
177
871
291
398
277
446
183
832
157
829
106
203
507
870
420
939
675
484
493
626
208
22
583
638
839
580
441
524
734
40
458
328
45
296
625
211
226
136
825
274
591
843
93
996
169
98
631
473
147
407
756
647
629
699
6
778
707
886
785
442
449
954
329
806
814
686
563
186
85
988
592
325
53
177
405
19
787
771
604
109
592
259
922
88
630
294
431
972
391
989
150
719
502
946
141
591
830
149
619
842
708
790
14
173
504
540
467
190
216
466
873
695
712
955
634
580
520
765
412
460
631
734
759
899
853
306
242
329
43
547
869
215
602
141
717
646
700
579
500
723
121
37
844
839
53
692
921
659
645
74
981
569
568
84
869
269
525
841
679
516
693
769
428
462
647
993
274
967
713
618
414
499
645
988
924
793
954
634
389
288
111
201
459
271
77
609
754
180
395
184
717
234
238
466
447
931
284
851
198
559
245
810
839
749
314
381
833
709
509
65
546
236
976
327
102
84
530
101
915
769
567
708
756
125
577
969
593
201
899
109
824
428
226
442
752
510
899
253
563
316
298
943
72
851
777
524
990
227
504
439
129
816
173
555
116
231
346
746
469
189
711
910
319
508
863
64
724
978
293
431
774
990
167
430
749
39
12
864
579
699
960
785
433
547
601
788
401
798
759
926
661
711
672
852
366
618
379
838
921
726
453
260
642
131
319
354
453
236
408
483
98
711
882
590
180
965
480
178
690
314
952
750
227
341
222
79
422
817
431
526
540
115
665
439
242
984
34
243
820
237
266
69
565
313
964
443
11
673
342
374
11
11
926
664
932
438
95
968
580
799
726
594
305
860
593
431
99
344
889
140
572
979
388
476
885
262
161
254
526
279
473
276
995
977
792
340
6
284
177
605
702
733
325
150
758
235
539
828
96
287
936
754
562
810
678
49
496
223
527
532
577
886
144
729
206
784
639
226
457
455
918
615
308
705
302
891
636
808
88
187
79
749
179
238
246
940
856
944
164
809
738
968
611
652
818
993
234
583
376
259
151
242
561
779
701
306
276
562
236
997
344
158
309
751
646
102
73
507
564
169
57
15
796
176
282
611
832
684
508
302
485
643
300
339
304
596
868
182
491
786
252
768
951
831
34
339
230
375
332
305
486
570
685
53
181
181
565
80
11
44
38
975
229
456
645
326
570
804
269
45
673
925
354
592
243
421
216
525
685
981
10
693
678
891
426
513
682
960
423
973
711
240
926
647
337
480
792
413
707
370
683
636
488
446
803
983
985
225
623
284
812
914
136
317
277
934
912
127
421
973
760
112
557
141
510
822
977
558
601
219
122
815
945
599
549
988
604
301
833
922
986
707
749
824
676
633
554
156
146
685
275
867
671
947
158
780
414
197
392
413
53
644
268
326
505
927
477
248
578
281
702
321
124
106
627
465
524
479
389
760
998
426
15
728
851
88
793
544
388
162
543
372
810
359
557
363
579
259
686
912
69
216
381
981
163
694
409
348
685
305
390
36
197
488
469
632
88
872
194
318
768
601
888
232
438
425
391
761
913
497
503
598
963
916
620
248
281
903
682
57
681
806
78
332
271
900
534
731
65
745
64
921
246
683
643
335
241
586
26
485
940
574
368
63
158
284
522
334
153
642
584
822
237
711
657
709
851
434
316
408
110
323
804
978
132
833
300
773
461
540
641
618
917
558
975
918
535
915
798
817
80
779
23
868
436
297
303
213
719
269
714
590
367
589
974
790
833
859
987
688
11
562
515
306
849
969
710
846
389
269
86
894
841
152
972
784
650
3
405
582
265
694
358
321
850
997
45
354
985
537
508
567
469
584
749
496
894
955
622
883
574
940
346
86
367
380
441
28
98
378
299
980
418
970
440
793
920
184
811
874
824
127
353
334
367
131
889
96
917
72
891
179
72
119
328
877
866
569
227
847
434
653
890
690
461
125
154
65
207
535
794
672
891
732
262
530
44
342
815
775
921
54
798
805
51
460
207
191
53
507
260
442
232
527
339
393
829
948
646
340
422
750
549
847
414
712
763
883
730
6
498
300
934
422
325
26
463
926
403
609
374
851
710
261
926
279
660
866
284
332
661
410
589
877
32
568
545
243
939
408
706
761
962
121
71
13
950
48
218
468
381
962
944
506
701
825
442
747
929
8
305
332
576
643
662
190
961
161
691
714
703
875
334
908
887
968
21
134
812
590
316
870
490
496
32
877
651
634
477
514
219
977
807
764
773
780
750
969
517
176
453
231
216
843
101
117
675
517
381
748
924
569
492
993
551
810
229
745
482
687
876
166
3
886
475
71
194
636
733
455
279
625
879
859
873
818
886
395
223
332
525
580
453
961
662
103
648
685
482
460
319
954
89
668
952
599
487
389
459
334
231
397
187
749
497
401
563
823
13
244
551
989
274
701
988
438
530
960
538
774
163
45
355
497
803
284
231
947
319
991
487
373
181
787
505
423
906
825
696
744
649
657
368
506
964
149
727
455
695
656
9
665
431
38
763
130
36
667
399
131
927
265
508
611
289
364
471
560
468
446
808
924
587
576
971
879
271
302
544
677
603
267
820
548
393
226
675
290
381
90
63
551
855
220
322
490
187
783
815
419
459
532
767
514
855
958
661
975
481
738
830
589
457
658
269
722
630
184
635
847
126
701
614
24
88
245
883
468
308
42
469
674
468
393
96
320
621
852
501
920
67
523
211
182
624
452
709
333
645
68
589
88
191
630
656
963
973
663
513
51
548
116
998
799
381
171
824
357
758
741
388
472
610
296
33
398
674
261
609
309
939
248
448
768
74
305
155
721
376
392
576
370
289
84
316
725
972
268
571
787
582
93
909
545
973
266
801
858
941
818
917
16
115
804
774
758
349
71
186
560
946
304
213
412
126
285
593
100
73
420
775
602
344
986
986
787
20
898
89
887
147
796
745
476
544
981
206
685
925
483
950
268
496
689
49
193
89
802
972
491
913
279
848
503
464
350
458
464
850
563
247
930
167
867
492
948
587
483
873
875
910
799
185
854
160
16
343
931
369
760
836
737
198
303
159
642
971
934
465
65
304
117
64
208
310
939
658
13
930
633
366
926
481
153
379
630
876
549
109
643
350
806
113
720
450
30
867
325
734
952
942
413
630
81
30
861
233
216
481
325
331
621
917
863
159
205
210
690
636
228
448
576
283
212
895
77
63
128
447
175
329
27
405
676
222
129
405
254
94
85
884
229
834
270
406
769
339
9
566
81
9
604
651
882
745
563
283
902
419
241
947
406
905
490
712
61
202
229
585
583
790
980
30
836
647
829
627
952
59
787
423
173
140
404
353
862
351
118
313
195
395
875
798
226
513
702
736
919
925
439
151
464
288
911
847
343
267
625
468
116
315
903
572
503
193
901
17
885
679
693
769
649
468
287
680
958
963
309
709
287
644
448
892
635
269
82
855
233
359
528
44
695
661
642
201
71
751
659
381
466
811
892
38
905
498
937
377
325
220
676
648
457
702
341
160
562
118
634
708
970
971
494
748
441
343
102
674
782
552
888
50
494
559
638
474
170
158
543
873
807
711
764
617
170
498
562
875
230
913
798
8
75
3
370
42
162
48
881
354
834
232
833
36
995
373
651
896
496
43
952
537
513
882
89
236
181
89
977
214
965
436
402
212
436
400
863
196
541
803
937
244
65
733
975
844
989
254
604
444
539
642
828
256
702
718
276
889
737
243
325
817
633
242
416
972
578
504
293
765
98
690
338
140
357
165
919
664
436
783
459
532
528
506
912
614
268
759
461
912
782
634
751
826
517
628
269
166
804
512
27
758
412
184
225
751
240
478
49
242
668
256
112
734
904
946
902
918
917
579
686
727
329
315
254
77
181
255
679
893
791
547
999
50
897
446
730
674
450
11
549
103
671
302
89
594
398
806
968
785
737
895
744
183
20
645
139
96
961
63
753
642
21
145
31
802
123
36
13
271
418
867
399
777
549
960
595
562
623
85
451
926
290
977
397
486
653
649
979
681
153
763
251
631
870
207
887
163
706
699
812
420
997
889
107
981
276
284
451
677
870
922
178
622
898
161
81
801
16
211
112
664
831
130
186
960
884
46
130
194
853
725
681
911
492
306
829
224
52
129
193
64
947
391
822
120
249
132
840
781
210
630
463
60
415
810
667
601
23
226
974
117
833
407
28
360
667
711
112
83
330
859
141
330
586
522
321
941
132
802
752
405
583
201
325
151
667
6
489
2
554
215
541
316
416
709
868
717
737
988
689
279
292
808
655
218
503
235
960
791
100
245
901
987
71
987
390
620
454
608
152
643
467
392
305
696
521
878
159
710
388
641
318
837
629
587
604
839
195
950
102
469
278
471
198
493
90
975
530
190
30
704
112
412
477
516
533
451
454
891
812
797
206
849
243
954
776
177
398
844
760
648
918
958
214
918
233
603
711
689
13
977
829
727
147
488
92
485
795
801
560
855
670
563
312
543
810
586
542
856
199
654
934
298
253
834
841
263
141
446
266
128
206
893
994
868
357
711
62
200
351
795
189
917
42
463
167
513
106
622
137
122
442
598
949
249
971
774
57
752
645
646
468
792
74
542
91
603
726
441
5
751
812
916
674
687
318
113
822
744
608
68
508
246
98
427
130
539
715
577
612
648
733
256
511
790
370
447
981
872
245
964
472
525
328
243
953
141
427
436
893
396
460
113
514
465
68
121
633
662
113
514
146
199
433
374
199
331
479
239
59
953
642
349
137
19
780
810
183
698
831
577
305
669
974
57
393
905
452
461
364
995
56
723
508
775
162
424
713
97
646
435
726
996
811
696
298
405
232
134
981
146
757
628
921
367
750
637
792
273
531
398
530
98
893
832
377
76
79
153
562
778
88
297
427
513
439
772
293
17
611
935
653
83
583
596
367
666
494
493
51
878
233
354
110
588
157
839
62
477
600
609
520
85
207
485
645
100
12
184
48
88
541
587
135
158
374
507
178
975
243
487
88
35
945
122
360
291
688
722
987
796
153
17
493
332
830
860
448
191
343
905
351
88
22
164
993
778
43
97
118
666
696
544
881
694
527
837
939
275
215
771
911
216
975
923
916
171
576
116
71
852
696
632
27
911
661
162
456
889
426
979
730
853
434
925
901
210
125
620
467
217
994
992
116
571
515
752
222
909
689
141
509
170
336
53
465
414
874
131
572
332
123
894
193
17
849
794
561
754
53
308
293
764
750
941
38
647
685
996
21
609
730
509
545
878
124
569
606
624
149
972
401
841
581
351
266
245
697
249
558
251
602
409
579
435
34
217
653
833
575
922
569
885
433
782
375
958
705
974
814
519
235
603
650
45
605
253
454
124
377
33
689
293
510
211
513
600
511
29
230
724
481
907
557
938
678
153
986
562
632
846
603
999
538
451
277
891
977
572
111
703
842
525
625
519
985
258
981
827
119
64
735
229
438
594
611
981
680
475
822
201
29
819
523
715
18
918
393
707
652
235
161
838
901
589
238
753
239
491
889
644
88
631
472
315
893
807
854
217
281
243
739
949
403
962
976
102
945
963
762
932
873
834
320
243
310
65
841
630
125
398
132
141
953
34
152
751
48
51
495
140
608
722
956
232
233
318
328
829
679
330
928
231
369
98
425
479
727
26
518
129
652
44
103
57
304
936
100
956
858
221
540
412
347
204
864
655
421
392
655
146
634
688
261
812
13
363
789
8
598
407
635
172
609
16
625
562
47
597
18
423
114
291
897
573
569
965
755
450
481
954
942
910
408
980
787
955
678
292
573
340
549
960
560
989
342
291
870
998
235
865
932
562
671
836
181
554
925
279
644
671
862
781
353
476
527
346
889
809
364
540
113
874
682
501
913
405
60
673
337
213
57
675
411
92
834
898
327
682
358
597
270
929
786
850
350
91
394
301
14
606
80
310
169
27
696
160
515
169
935
945
2
363
228
28
53
508
67
248
625
423
604
881
845
188
779
712
496
444
749
387
390
429
738
262
305
548
882
120
642
557
752
537
109
143
734
682
910
132
426
121
443
784
83
177
611
829
550
353
828
572
475
414
687
579
156
411
428
203
91
585
209
73
243
591
608
362
511
199
772
878
4
917
182
140
412
727
687
204
591
298
711
899
399
314
852
928
461
706
246
709
326
861
974
507
230
801
143
708
130
248
514
644
32
712
7
734
100
676
611
6
726
802
500
441
554
384
152
701
435
25
62
417
979
465
893
189
517
884
359
829
865
519
636
500
546
882
962
770
297
143
711
31
387
79
747
535
560
894
174
506
852
777
553
786
801
538
227
330
774
995
956
459
593
608
840
408
415
902
334
730
410
815
596
759
47
731
986
404
564
11
909
496
713
133
743
309
702
243
100
556
491
848
317
206
338
576
106
801
846
372
196
332
205
681
186
645
359
105
590
524
570
686
800
674
560
216
576
540
861
231
909
589
197
603
267
95
295
701
768
922
818
314
571
553
340
926
442
291
708
469
348
519
278
65
335
128
48
207
456
379
981
11
130
5
874
313
372
182
767
248
720
120
232
23
137
372
341
56
357
838
861
414
137
723
154
728
263
905
162
855
537
974
620
747
196
337
496
632
247
86
762
113
26
538
88
933
726
560
77
294
793
292
164
893
104
531
767
730
587
35
532
161
419
70
23
764
22
215
853
667
750
425
542
793
842
363
872
435
130
131
202
16
633
702
783
844
830
342
277
76
636
144
455
66
264
497
856
526
747
243
137
721
427
295
329
119
104
923
335
383
782
350
541
924
711
111
534
292
599
419
224
161
232
386
415
518
184
859
179
79
154
351
362
309
248
388
331
207
316
722
720
79
786
696
658
516
535
919
770
659
206
754
781
7
60
875
41
468
337
979
689
377
521
262
45
753
955
336
602
153
705
675
363
998
33
910
122
744
273
412
296
420
521
541
249
582
207
127
415
257
247
724
908
348
549
463
304
283
390
181
815
617
184
489
175
193
884
271
900
740
444
639
4
980
559
327
42
805
743
689
829
366
531
47
105
693
352
5
121
401
551
915
856
895
204
351
870
428
465
672
105
37
147
267
951
49
888
827
362
555
966
664
60
852
794
773
594
244
196
189
762
589
932
369
490
569
959
213
302
935
889
693
313
723
655
848
863
920
299
179
408
158
396
618
976
895
38
696
306
963
154
258
443
771
663
379
931
747
922
618
114
553
386
590
852
534
436
148
684
205
795
684
830
642
330
616
486
329
943
93
637
162
711
436
30
732
204
622
807
614
229
2
226
417
620
796
798
948
652
522
910
3
225
775
576
948
638
282
846
804
115
339
925
938
736
436
742
87
753
898
819
431
852
341
228
897
370
631
585
875
51
983
564
630
714
93
219
590
843
526
932
399
404
860
553
829
243
24
957
790
589
397
685
868
330
455
903
875
620
103
152
369
630
541
902
861
382
480
690
136
339
952
517
308
157
609
225
298
240
709
10
425
66
566
236
496
320
490
405
57
610
392
833
334
654
537
27
291
589
901
133
690
832
123
647
40
816
925
352
631
6
743
518
915
37
76
655
530
930
210
368
530
718
614
867
419
756
328
94
190
863
758
797
604
248
877
56
60
65
683
704
513
818
740
132
789
874
31
448
137
412
978
911
42
221
944
433
525
39
797
979
728
200
254
827
989
271
843
407
877
65
97
766
613
326
716
461
783
127
537
280
205
551
631
961
309
639
267
753
388
676
773
69
764
567
134
546
845
372
882
235
861
494
678
220
662
606
571
864
513
751
831
249
986
620
520
115
104
160
731
414
573
765
510
913
195
126
258
211
146
736
156
26
568
705
738
343
330
229
478
283
539
448
986
497
622
466
939
589
505
279
185
424
741
481
517
111
227
151
844
519
742
674
594
971
205
304
626
55
593
166
832
3
574
440
432
874
793
125
293
385
662
944
176
517
662
297
237
31
94
157
65
149
921
143
459
944
387
699
770
59
154
205
863
133
500
991
895
766
42
241
985
107
411
455
759
57
976
254
743
315
264
324
589
737
155
772
797
182
750
805
713
873
917
314
76
870
93
149
39
372
848
625
998
559
763
622
974
343
891
9
988
439
147
445
64
270
430
52
180
209
764
379
233
535
789
710
440
465
274
302
125
417
852
678
714
624
895
299
152
139
389
111
66
555
12
207
471
899
829
217
860
36
308
187
19
215
652
163
548
252
582
72
26
371
163
729
536
539
555
772
117
847
309
327
851
245
824
727
416
92
666
12
282
819
754
363
874
111
926
185
196
262
330
492
391
756
999
734
297
839
13
335
77
736
204
878
915
787
360
259
653
104
769
769
376
526
11
981
961
798
204
186
588
600
902
211
393
362
81
9
705
165
516
701
43
515
526
192
270
869
140
409
691
832
809
322
736
946
76
395
964
392
620
750
102
641
543
128
735
860
547
216
671
504
546
336
37
528
589
77
557
181
720
601
211
707
560
909
901
879
165
121
162
86
489
129
950
593
671
175
503
549
549
377
777
996
813
516
209
506
513
476
761
691
978
902
438
650
225
597
374
831
906
856
183
969
399
232
818
263
669
363
466
98
716
270
726
641
509
274
67
746
376
112
862
834
427
154
270
263
235
402
422
903
291
707
678
584
935
394
595
672
312
98
585
630
149
723
143
361
302
348
722
405
406
711
136
176
820
403
95
212
942
172
629
907
840
604
3
534
355
40
315
345
775
305
927
907
696
847
109
516
745
184
132
764
558
533
975
315
907
525
361
603
608
316
171
756
68
211
95
878
504
232
417
638
58
968
579
745
295
13
222
114
831
199
137
665
785
841
973
439
314
629
128
696
490
339
902
297
799
815
403
156
381
638
258
8
653
149
204
681
435
381
908
297
406
393
207
691
949
753
931
929
924
75
934
296
930
545
892
878
76
48
939
283
632
587
327
876
832
909
248
100
864
276
756
132
789
950
246
748
974
188
145
552
855
462
764
406
266
980
730
173
996
212
792
509
444
476
980
141
410
805
496
572
786
91
928
727
704
798
248
621
640
55
770
657
716
372
291
819
687
778
238
300
82
159
156
887
936
580
342
488
145
639
984
167
376
800
849
153
163
672
364
155
125
853
418
626
204
401
212
996
5
346
76
866
794
363
862
559
848
684
322
419
940
322
693
832
966
573
954
258
728
968
791
559
607
422
896
521
549
424
164
976
707
213
796
434
575
693
18
279
607
813
684
35
226
226
407
278
550
536
950
64
681
824
906
976
393
551
398
647
173
209
289
364
805
306
60
618
423
736
120
587
586
131
522
788
756
546
894
390
858
787
318
919
276
222
496
790
138
867
712
764
57
398
684
606
979
439
249
810
356
114
682
748
939
163
775
673
543
624
58
516
584
311
40
423
503
700
816
942
496
899
877
877
7
98
608
207
115
482
194
775
94
878
647
842
279
930
115
17
284
410
462
784
65
91
166
332
820
542
151
428
77
856
785
680
830
911
406
679
190
738
717
694
221
491
434
985
412
464
431
289
804
733
575
264
183
70
42
899
323
72
61
730
806
793
833
907
933
239
100
276
245
933
229
315
353
334
899
786
420
654
471
105
936
480
657
333
534
42
774
754
634
572
281
405
57
66
823
883
356
972
596
383
82
709
530
970
619
223
620
469
734
498
443
657
192
281
744
144
15
136
396
647
995
411
969
793
694
779
55
445
25
332
741
914
557
693
18
739
498
752
73
62
886
951
710
731
813
673
32
176
752
992
493
581
98
218
551
778
747
648
739
315
555
905
980
568
271
382
54
39
500
306
628
656
628
677
365
909
282
285
412
887
873
622
482
349
273
880
279
793
824
259
693
201
477
561
684
475
336
908
841
244
212
878
881
854
501
942
747
568
182
717
91
656
780
211
395
193
648
570
833
740
36
44
147
607
797
178
56
165
531
82
926
705
486
186
715
827
111
797
961
968
987
214
530
189
897
664
95
68
619
567
201
29
877
658
941
487
118
748
887
488
149
823
226
160
346
727
497
793
974
970
691
745
866
944
562
239
728
567
845
609
62
125
284
37
721
472
436
725
38
197
324
472
614
920
511
790
515
517
786
298
725
680
747
220
273
686
525
717
200
677
282
715
397
598
251
858
386
119
824
827
414
642
901
333
315
967
446
568
82
465
492
757
257
641
502
374
909
426
650
282
562
149
871
9
199
257
215
388
611
598
109
627
801
677
784
276
204
48
979
924
642
919
871
764
781
783
277
879
514
368
111
575
880
870
207
964
195
654
267
894
66
396
631
709
905
200
750
779
255
497
382
649
805
309
54
163
563
521
444
487
64
775
5
825
983
189
599
842
337
341
297
596
228
228
197
756
38
167
467
284
834
778
939
422
771
515
337
580
973
876
362
53
979
127
630
713
631
230
682
528
285
626
257
382
605
559
521
610
965
682
87
945
454
366
428
800
344
660
720
391
472
342
871
366
567
481
366
474
734
150
976
867
455
453
646
423
950
441
924
310
351
402
494
478
729
563
7
98
421
372
938
986
791
802
929
881
435
617
570
348
726
729
513
82
861
628
37
697
673
512
587
424
852
290
699
313
319
121
981
36
844
481
334
540
662
259
804
703
537
732
592
827
528
81
776
114
936
387
748
416
468
560
493
75
65
563
632
568
603
728
846
626
959
527
506
97
215
730
92
607
664
894
781
375
415
602
693
784
789
532
523
461
15
994
168
180
745
71
901
808
616
675
226
728
589
591
786
662
445
415
774
26
519
362
967
736
196
866
815
78
361
624
947
134
612
869
738
602
467
637
627
123
239
236
457
914
140
467
388
360
689
51
985
828
114
413
160
915
128
669
404
256
960
879
746
164
255
715
680
803
543
609
907
353
490
148
740
15
465
197
447
193
423
199
794
709
766
880
830
397
457
344
833
325
577
385
138
384
653
187
355
863
6
987
637
710
592
54
843
471
518
203
264
426
336
289
645
389
388
776
60
485
999
341
59
110
921
518
75
266
912
922
459
644
734
825
573
798
810
949
867
592
595
123
856
576
703
622
729
650
350
78
656
602
124
473
588
833
94
182
476
539
112
680
517
443
551
447
323
759
178
170
545
520
912
421
968
629
401
293
976
222
929
509
765
277
768
698
482
853
872
773
771
575
720
21
192
672
817
436
427
301
328
18
384
392
612
398
778
59
62
514
528
809
408
707
966
652
470
718
581
472
238
629
66
27
913
880
575
239
394
870
668
439
777
943
13
231
90
755
984
33
884
751
126
696
913
481
613
801
690
5
54
67
128
124
684
533
224
193
228
240
236
269
742
774
412
656
530
197
960
909
957
318
51
657
626
97
82
795
152
270
311
735
607
666
839
858
439
500
87
279
46
620
630
77
992
459
524
95
353
822
801
536
109
557
574
979
630
325
598
48
614
700
714
704
832
64
738
483
855
85
107
902
194
556
593
821
154
446
169
299
92
105
780
622
293
135
533
681
458
796
351
365
803
538
8
839
100
228
657
757
394
618
879
961
530
675
299
403
997
442
163
399
875
320
740
403
393
591
802
48
581
532
690
629
808
441
333
538
988
24
618
430
524
29
46
275
603
638
398
95
948
414
587
239
597
274
632
357
887
246
714
403
414
378
124
608
342
559
217
992
107
897
212
184
984
47
815
819
180
446
685
242
587
568
354
539
831
937
920
320
216
76
558
883
2
378
105
942
158
559
870
466
570
285
701
533
929
748
803
889
657
761
338
847
701
271
651
543
194
790
326
143
675
570
679
360
424
106
402
746
611
863
160
404
42
685
918
563
530
818
892
153
125
696
772
644
713
740
460
484
971
694
198
724
481
652
490
553
946
98
118
570
600
750
30
500
248
650
398
864
304
40
740
757
28
240
459
106
867
395
664
266
324
347
635
900
976
410
989
365
986
368
745
624
655
156
579
153
708
141
575
311
527
195
612
61
216
79
578
306
910
798
906
180
747
160
180
660
186
689
842
976
125
277
658
859
536
225
756
849
816
860
71
336
363
843
453
778
290
683
248
297
740
852
650
46
191
821
92
105
68
214
592
975
186
576
521
775
607
281
905
572
353
496
78
186
842
658
495
435
811
756
43
559
592
207
858
279
109
439
736
256
914
589
350
591
219
53
406
862
99
605
296
980
63
650
595
88
143
784
268
159
193
464
361
39
770
637
180
533
399
662
647
149
10
253
406
378
121
636
359
895
343
181
236
93
771
252
484
376
174
713
57
880
335
213
345
821
132
817
309
921
603
530
269
653
249
93
997
669
646
574
563
671
250
685
490
3
935
314
227
264
350
793
407
377
66
729
666
681
55
333
687
363
422
475
841
185
713
763
987
332
977
376
929
383
918
740
885
246
520
568
107
522
690
320
511
489
221
59
205
928
548
728
789
25
473
889
231
200
856
862
877
370
298
226
993
31
872
847
301
7
789
676
289
640
660
510
380
146
562
742
436
836
488
584
532
963
251
395
186
233
354
762
787
748
632
204
737
825
205
458
732
449
801
498
732
221
563
857
926
633
849
944
363
78
660
627
676
131
613
855
843
175
294
512
202
561
405
33
515
18
241
222
354
551
215
171
821
322
601
897
337
88
33
915
457
475
663
26
248
854
741
647
607
781
341
807
614
635
865
271
145
872
811
472
132
732
341
444
640
166
495
403
297
784
26
854
823
629
879
604
865
523
819
28
578
653
40
95
569
224
406
769
943
279
927
437
458
901
244
2
159
43
162
187
198
621
17
838
932
317
943
30
877
161
772
950
24
194
118
475
742
684
338
715
233
455
493
503
260
619
982
968
21
831
207
358
738
98
324
757
614
343
182
378
939
661
148
501
879
702
940
580
374
147
925
152
111
916
185
694
357
224
744
6
722
241
761
243
204
666
601
359
591
814
515
756
208
249
281
176
591
984
57
130
666
349
259
896
748
561
584
251
207
332
973
477
413
445
242
280
345
520
219
850
341
569
672
800
743
298
234
134
105
735
771
523
756
322
215
823
764
48
549
301
476
926
534
299
391
270
913
650
149
543
652
674
211
883
169
443
116
539
927
197
179
202
304
470
64
887
801
18
935
283
452
459
196
380
951
945
366
651
828
410
546
571
485
980
579
933
222
853
734
274
252
823
226
313
556
204
5
421
430
206
177
968
275
542
46
586
67
558
504
439
3
120
218
968
50
761
490
471
3
806
982
124
148
403
853
930
2
774
228
121
160
903
242
397
553
257
931
173
198
871
725
892
469
326
778
683
729
309
305
700
316
495
73
880
248
864
282
473
847
30
987
645
415
933
836
130
451
207
611
154
847
311
598
200
812
725
744
148
59
984
661
865
887
272
223
848
413
999
649
573
401
772
961
414
325
608
31
997
414
292
769
460
885
859
666
860
900
566
444
552
802
303
607
618
887
303
767
661
750
308
995
48
806
569
816
826
173
816
948
304
967
333
853
733
713
400
793
154
695
503
528
616
983
926
618
50
244
228
747
987
424
507
838
799
746
104
31
961
47
76
648
15
96
361
173
314
490
458
579
461
212
815
236
906
639
572
851
687
123
953
24
282
430
331
705
406
253
207
355
389
737
69
219
266
461
755
790
438
232
953
674
856
570
85
715
603
347
212
778
58
242
760
938
974
532
716
522
899
751
102
585
97
624
114
527
201
976
834
403
903
288
880
260
143
283
734
229
116
585
542
337
542
974
20
788
30
544
995
459
780
353
893
941
695
715
555
938
25
428
651
905
339
718
254
866
937
792
926
572
740
911
303
398
179
112
182
525
129
377
666
605
9
561
262
414
6
12
426
673
895
59
108
748
14
757
568
950
120
831
752
959
435
172
729
837
135
108
604
981
62
673
494
73
181
518
912
805
403
690
477
303
739
751
930
909
702
322
731
710
697
674
947
523
243
816
675
517
773
539
263
758
835
656
726
382
342
284
305
455
125
933
61
186
310
511
158
827
158
981
791
537
205
914
585
405
686
90
303
799
406
333
850
861
225
449
766
623
11
314
204
971
149
402
522
193
46
84
820
615
363
357
852
798
705
151
123
359
619
25
897
888
28
808
156
738
621
783
989
994
113
766
637
158
530
207
331
369
375
74
287
340
734
585
934
872
587
61
105
213
391
22
726
919
399
663
353
611
867
148
93
227
750
646
580
844
270
839
841
527
4
457
334
287
149
532
109
422
178
875
88
858
441
810
942
499
12
931
414
796
856
569
671
75
4
7
473
877
982
253
123
396
416
290
711
418
248
875
443
235
71
316
479
418
237
309
777
727
914
34
430
601
458
807
832
870
680
728
597
731
425
406
956
323
799
59
676
506
247
403
771
537
780
920
894
548
340
458
574
385
711
803
559
979
741
974
568
263
935
391
563
609
516
510
145
586
529
398
345
598
80
535
664
13
314
136
129
60
350
834
49
252
230
900
465
736
588
688
535
320
316
559
409
473
160
112
148
760
838
112
634
389
888
174
723
822
685
230
548
293
790
426
316
245
349
173
68
656
657
252
196
496
508
219
655
97
30
717
70
7
131
305
435
534
67
49
785
783
874
938
953
398
79
723
339
215
929
445
536
166
643
195
170
495
944
601
862
72
855
2
53
966
727
56
56
801
575
856
843
137
458
174
43
366
834
173
758
381
818
126
389
633
451
146
198
469
219
446
739
743
501
279
82
776
884
419
548
966
365
999
902
476
501
423
541
672
301
20
753
43
490
676
153
130
943
174
422
674
301
875
540
100
689
42
700
401
436
121
956
98
579
429
837
353
473
903
554
887
575
511
92
144
675
966
154
404
202
722
445
551
38
107
941
521
191
385
774
748
354
287
893
694
806
261
24
480
917
177
771
287
212
111
489
674
823
351
148
987
271
533
763
139
726
392
271
796
121
828
604
33
673
641
580
183
774
432
710
91
780
311
508
332
296
23
287
19
314
827
62
169
951
322
852
349
240
631
772
4
98
747
152
598
855
407
435
281
938
683
748
272
80
232
509
269
678
942
766
406
873
816
29
869
109
352
174
413
887
124
594
419
892
191
6
443
273
684
613
840
973
172
798
121
288
86
25
617
956
300
795
293
236
633
106
927
44
977
666
543
658
815
731
328
877
909
80
595
608
807
97
548
627
892
57
895
344
847
271
755
525
547
18
463
813
778
814
182
321
487
300
632
585
895
52
11
642
713
869
464
953
454
37
261
820
986
745
123
773
794
861
580
873
932
3
355
417
269
211
253
417
379
927
761
847
520
474
753
240
706
123
680
269
940
901
533
828
746
733
932
511
765
490
573
684
109
919
186
146
572
348
629
568
164
113
523
940
850
241
520
897
471
43
139
497
198
163
645
93
983
783
778
542
876
443
824
126
761
402
568
846
254
818
291
183
855
610
457
434
90
78
297
948
140
969
75
769
650
508
284
378
241
297
127
500
262
514
231
388
544
218
377
347
273
678
680
733
244
357
439
746
718
631
871
257
925
492
66
788
788
667
87
882
57
946
140
303
968
208
857
877
463
893
697
114
518
610
513
276
256
815
158
398
412
23
85
41
918
887
681
454
81
333
439
189
452
881
499
253
52
975
917
648
869
750
561
543
220
859
594
496
908
313
918
940
175
100
932
536
828
338
503
279
548
206
485
64
105
898
560
115
490
733
923
243
453
839
706
884
137
520
220
194
89
752
841
742
922
696
206
724
535
476
98
558
471
992
436
601
3
910
897
784
188
810
901
532
200
208
646
412
655
121
536
320
26
919
731
239
33
106
670
298
143
254
680
70
892
462
716
668
52
688
46
404
113
436
167
635
883
727
441
821
341
225
547
279
7
195
61
560
624
409
918
236
668
110
905
153
45
733
889
182
516
161
475
289
226
539
849
450
691
61
501
162
153
343
12
885
43
680
175
29
440
358
366
357
207
438
311
884
62
722
400
377
977
255
667
730
170
325
675
60
230
885
542
665
516
497
880
661
850
781
813
769
820
636
220
927
928
2
34
653
949
816
541
328
216
397
84
449
457
327
154
588
658
53
804
925
462
459
311
407
732
785
395
803
105
628
63
742
777
615
309
103
880
321
193
228
481
954
893
51
900
804
242
17
960
907
634
99
910
167
643
481
500
434
376
295
626
604
785
233
782
265
886
529
228
524
667
206
614
614
909
272
704
344
18
742
643
979
787
898
696
997
673
58
812
277
131
592
90
188
592
526
866
757
679
528
586
37
238
558
807
832
698
405
692
360
706
698
200
653
537
611
938
348
758
193
183
112
648
68
985
520
865
660
170
380
74
357
262
121
201
444
810
60
615
763
532
275
185
313
558
228
232
451
210
578
883
877
230
944
407
125
63
653
776
297
388
443
324
23
215
432
984
443
576
459
62
36
862
969
565
866
474
334
357
309
884
275
174
531
315
975
804
631
451
725
790
503
797
360
161
763
335
505
366
401
39
544
318
900
648
182
559
960
429
989
168
678
400
234
311
627
231
536
961
191
956
792
945
860
23
413
442
893
362
244
142
664
676
35
369
870
919
671
591
16
759
71
527
588
929
178
934
767
781
482
644
340
551
813
663
879
753
524
232
398
466
431
953
536
692
452
328
622
753
330
517
259
616
765
55
891
792
895
752
806
719
194
546
607
160
586
415
786
852
344
182
167
618
942
658
809
434
296
188
482
767
872
279
153
975
196
99
680
774
202
616
232
634
495
817
283
945
988
236
317
316
485
826
668
595
941
652
763
144
236
487
31
672
247
743
353
260
701
929
465
760
420
963
403
537
359
725
974
161
57
674
483
91
565
520
990
9
968
849
373
441
214
157
948
689
699
527
30
955
769
671
872
593
249
37
913
90
966
886
986
518
935
374
819
431
876
503
139
565
453
184
203
87
753
348
6
321
747
300
132
106
746
29
843
706
669
837
842
78
285
635
985
59
505
871
394
76
113
780
314
888
968
731
43
308
417
358
878
33
545
64
568
681
192
807
746
570
375
632
103
765
50
858
568
817
341
690
319
109
750
898
21
592
591
575
549
352
129
445
982
595
921
725
818
45
318
633
700
867
920
787
27
724
295
826
134
514
175
814
964
173
142
861
651
737
359
219
74
159
481
280
905
212
308
667
862
340
34
178
794
181
264
90
52
27
847
274
158
241
994
232
159
990
607
847
924
80
427
588
858
908
12
459
223
300
900
677
789
831
419
935
629
289
996
99
762
289
77
309
515
665
824
586
821
840
85
173
180
259
77
909
467
301
866
532
794
926
830
418
973
480
418
910
106
730
494
964
19
971
373
366
785
986
358
865
50
288
930
37
148
853
174
225
17
588
569
756
791
177
99
351
702
897
183
863
630
707
659
616
609
448
952
704
954
335
828
646
572
805
302
46
958
700
418
649
69
134
768
365
901
473
47
662
859
434
860
840
124
362
345
918
871
197
494
670
961
791
368
568
386
772
804
649
698
786
390
291
932
716
958
953
63
736
599
480
300
566
188
182
509
856
849
982
316
153
493
621
997
297
524
446
372
204
885
724
983
25
797
163
426
112
633
638
394
390
968
283
266
706
768
503
313
75
316
840
886
958
875
416
6
624
443
854
470
407
639
202
58
497
159
388
877
146
962
154
154
726
114
882
85
381
98
538
742
370
821
447
87
853
590
113
328
575
548
993
833
661
538
782
105
423
981
86
23
658
580
736
392
459
100
234
731
834
878
255
318
660
187
159
991
175
276
469
44
574
261
517
111
907
589
164
622
45
172
754
412
108
378
750
285
751
482
610
908
676
93
570
31
820
465
308
910
494
480
132
397
566
230
424
351
693
794
299
748
170
672
190
515
451
75
596
991
774
157
472
993
803
293
897
95
621
870
824
366
307
201
65
810
232
127
754
634
658
278
664
869
179
214
72
266
247
638
698
998
252
588
389
932
448
290
220
512
473
90
164
136
800
55
486
498
635
994
176
336
122
389
787
266
573
727
869
13
106
605
761
429
543
289
117
268
136
866
643
942
932
282
457
322
592
72
452
111
245
292
660
697
731
495
477
931
522
727
594
17
489
797
62
724
437
143
941
686
612
245
518
266
987
99
182
435
21
894
571
754
794
411
287
159
562
252
540
226
959
319
495
77
229
590
915
227
323
462
822
6
559
137
180
801
541
528
471
160
410
543
931
388
483
765
998
374
771
685
646
254
636
348
969
70
446
645
289
695
741
764
520
170
173
340
149
972
690
911
24
607
8
634
233
735
554
703
690
573
852
700
932
236
706
613
372
143
925
315
688
504
170
203
539
701
695
754
324
611
869
704
676
977
242
606
596
126
924
286
356
683
976
808
250
856
949
117
801
800
198
939
956
275
582
688
31
213
713
684
299
779
287
983
95
383
831
457
797
256
455
170
526
301
186
119
475
281
515
554
512
552
950
779
325
980
176
574
410
19
384
762
179
394
564
33
660
314
890
155
863
193
187
29
945
369
120
861
432
679
232
94
187
48
819
203
525
124
220
431
301
761
895
37
168
838
747
165
679
938
485
330
368
130
335
322
925
690
10
379
47
484
575
373
262
680
520
777
415
724
768
152
864
810
503
121
996
676
902
496
582
843
964
925
763
166
50
690
216
354
737
198
904
439
925
458
566
779
885
920
380
468
956
415
234
300
702
293
554
500
839
789
304
864
684
593
350
464
999
916
231
281
380
627
299
20
362
847
787
793
936
620
312
652
27
942
466
544
852
828
99
416
852
465
132
312
455
978
41
486
223
436
568
399
843
605
201
789
316
40
77
216
974
642
889
902
937
648
787
654
484
416
459
568
108
316
16
986
876
527
551
71
937
233
769
100
140
529
80
332
436
806
290
442
457
393
92
514
269
192
646
385
36
539
260
394
438
603
153
631
958
345
138
879
334
658
635
600
171
849
504
367
594
654
464
170
958
267
592
127
994
871
479
669
223
242
854
734
180
591
676
789
123
128
174
786
152
81
949
245
79
610
718
284
317
294
625
300
619
501
148
23
393
279
386
908
13
838
332
84
255
804
677
954
166
542
378
673
205
550
901
833
4
472
322
678
198
132
772
46
454
911
721
519
62
140
350
863
512
986
78
89
236
492
267
158
196
582
218
524
275
58
228
188
889
506
60
897
891
220
892
402
397
794
232
822
834
602
768
28
790
823
106
192
770
792
398
860
702
802
824
229
899
526
962
654
476
536
141
780
973
338
49
700
990
745
213
261
15
268
175
205
262
839
651
227
301
536
470
237
714
319
800
563
104
15
550
544
907
247
480
678
931
396
436
447
962
347
769
850
455
197
499
562
301
102
792
21
666
631
241
503
757
662
774
675
230
86
479
917
683
841
26
303
575
56
883
2
52
202
194
957
869
718
708
824
855
125
114
922
977
353
863
395
778
167
335
349
40
379
162
431
451
268
339
80
313
428
14
577
213
410
789
252
482
134
714
942
262
662
641
451
950
417
109
688
880
603
29
584
186
133
968
445
747
678
421
588
434
489
762
804
247
827
483
213
765
338
153
164
762
217
470
714
127
176
526
467
254
829
611
193
87
972
798
467
490
893
342
850
984
59
581
946
904
317
308
129
587
580
688
145
869
908
712
883
847
578
322
423
280
926
529
274
373
242
264
126
15
963
349
118
755
63
524
758
981
633
921
728
468
947
172
108
526
198
99
667
995
326
224
263
749
372
484
854
705
435
301
708
810
274
545
776
701
446
839
317
755
208
965
984
102
815
142
869
37
930
200
427
308
969
958
659
785
287
719
506
932
917
682
222
770
288
408
599
49
572
319
614
265
692
440
376
826
348
707
286
23
875
211
261
55
328
133
743
121
739
904
955
757
762
975
773
715
787
191
825
214
795
256
88
642
188
111
593
244
832
736
143
876
196
600
886
846
564
718
535
323
77
281
494
209
775
35
172
835
218
953
426
149
48
42
548
412
174
415
96
929
835
799
596
99
298
510
572
515
433
409
95
591
65
71
528
201
451
993
452
531
874
361
173
292
167
892
812
809
628
366
236
214
225
80
822
831
536
531
607
419
640
203
679
307
950
183
670
641
963
242
936
879
456
900
314
751
47
368
822
4
352
377
652
973
525
281
334
989
228
352
707
53
820
350
658
536
555
375
27
442
48
902
420
262
564
520
29
932
256
878
50
782
564
659
350
102
987
708
871
753
252
701
51
655
893
619
576
656
277
639
427
240
917
184
119
997
381
485
350
641
99
286
919
269
284
373
878
662
698
771
235
134
880
192
281
907
976
711
91
301
79
147
490
211
967
82
672
22
233
488
639
209
657
747
638
174
693
706
623
160
55
232
512
67
108
602
697
74
495
168
106
168
705
618
287
22
343
262
255
648
79
210
332
376
779
875
919
575
745
988
572
124
118
878
887
799
205
313
659
836
601
517
648
957
6
62
224
227
192
158
837
82
127
331
363
542
254
731
165
111
114
763
541
847
289
79
249
295
531
94
385
296
152
42
482
453
58
479
17
370
795
564
689
280
77
517
816
257
351
634
213
425
424
710
850
802
359
473
392
697
715
791
928
773
653
406
448
422
439
323
560
26
571
672
235
350
494
729
179
67
665
489
229
471
736
830
274
115
449
801
852
53
168
156
374
672
885
922
402
218
539
243
432
607
424
526
46
520
143
121
435
968
7
714
663
854
327
347
563
661
252
626
274
701
232
101
433
937
683
944
125
926
706
991
844
110
749
725
423
958
751
887
838
406
339
964
139
646
991
613
864
864
703
163
43
77
540
816
583
752
940
734
817
75
416
155
206
835
927
38
753
382
149
770
225
13
633
106
924
871
102
795
831
80
701
785
756
798
792
997
216
88
250
515
412
114
635
675
26
582
378
133
995
600
613
928
186
552
682
280
753
176
901
135
651
627
477
696
596
39
534
165
602
526
209
545
637
533
666
541
106
563
300
613
396
967
137
579
183
585
317
956
354
604
196
136
528
600
550
693
589
758
588
652
197
129
890
350
15
584
797
562
356
915
148
427
596
187
404
905
616
290
409
123
195
606
508
843
22
988
771
968
67
909
958
958
171
545
184
79
921
296
686
802
522
847
398
384
7
422
939
208
866
793
349
474
118
518
970
240
109
149
825
18
949
338
93
298
20
589
993
575
449
484
188
357
913
515
233
790
939
308
682
754
549
812
781
867
353
212
732
868
750
775
225
126
733
656
592
54
115
579
299
787
470
136
647
403
983
693
261
776
213
323
386
600
601
6
352
311
733
171
81
630
289
359
706
967
333
545
796
122
237
504
504
704
560
51
291
206
329
922
145
674
683
765
799
480
213
435
562
376
871
583
67
286
888
131
749
170
19
945
136
819
984
110
49
653
14
498
723
340
576
363
834
954
601
93
960
880
273
597
256
588
988
491
100
84
335
905
445
730
504
675
573
585
810
277
492
648
211
129
398
753
559
640
776
531
266
319
882
99
773
829
589
520
473
700
344
730
420
707
248
47
132
317
780
99
524
693
274
321
171
611
795
918
566
591
430
339
809
52
962
539
993
468
627
158
792
510
581
405
16
452
190
625
2
566
135
336
825
20
686
229
901
721
10
779
479
846
272
130
646
231
39
122
173
618
228
964
200
966
551
595
262
429
565
501
491
914
440
150
2
329
751
448
709
529
350
317
634
841
850
793
14
347
887
96
103
169
794
721
745
157
691
173
679
944
693
753
527
845
543
229
193
278
36
556
478
173
922
872
158
276
573
398
761
42
837
210
435
387
326
132
577
886
622
975
219
201
275
703
593
846
751
742
671
792
936
141
945
395
995
668
743
238
968
966
117
707
703
391
241
851
393
303
882
83
122
545
661
165
278
355
66
799
585
830
948
461
581
524
276
254
939
594
985
260
741
822
943
859
631
300
745
211
155
111
60
608
292
901
310
631
5
392
692
289
873
815
587
640
126
931
143
83
975
319
705
695
116
484
648
633
223
852
956
610
522
454
556
193
907
178
199
130
404
375
361
613
192
754
161
952
302
504
235
106
200
729
564
345
24
168
641
662
125
291
898
858
691
19
416
291
515
760
192
80
577
531
602
538
570
681
603
652
621
685
454
893
506
320
252
323
990
688
758
669
412
953
411
704
801
535
588
699
585
251
35
397
622
571
895
992
69
218
887
286
417
896
208
167
680
256
755
33
471
604
505
101
202
103
69
806
398
162
133
962
913
329
311
265
888
926
690
501
876
782
582
349
298
128
527
507
769
976
126
932
823
475
671
383
810
262
639
341
909
662
113
77
446
178
282
987
153
669
390
753
850
476
236
785
49
118
126
253
805
962
362
192
605
792
379
860
102
658
401
48
664
694
871
526
685
136
784
996
925
639
237
631
494
924
631
716
980
488
561
935
296
479
650
257
480
772
533
801
370
66
274
449
928
541
586
943
327
203
959
581
575
9
84
773
710
915
649
613
83
169
348
506
804
571
88
952
449
915
709
142
223
427
27
852
37
28
662
355
647
610
226
611
969
866
18
474
371
169
877
978
339
354
911
257
860
422
376
616
258
746
640
12
492
404
236
217
100
345
682
46
126
528
910
650
216
925
748
787
32
411
751
552
826
443
141
68
568
923
58
68
532
640
283
853
203
523
950
78
250
691
76
354
324
838
718
690
499
517
558
412
249
616
381
64
724
668
621
471
994
535
550
894
189
35
934
424
945
700
127
987
289
635
907
832
893
368
329
945
729
678
230
624
33
957
119
319
551
537
563
136
520
202
142
970
144
727
694
534
393
512
909
283
930
812
817
332
160
942
376
291
177
585
813
609
153
842
958
802
553
575
603
371
632
367
984
8
591
184
375
396
49
660
99
750
788
28
949
906
547
740
649
974
459
659
795
747
383
816
815
281
972
113
535
793
290
174
492
57
312
163
84
345
329
64
781
380
557
445
599
527
203
274
662
961
643
152
218
978
634
638
887
367
40
266
829
158
338
222
343
909
408
721
960
854
358
971
253
158
939
281
959
532
927
75
663
254
789
104
757
40
251
399
607
656
161
405
876
142
143
185
192
612
123
59
589
25
165
63
135
519
217
836
732
114
691
437
662
657
775
181
726
99
693
930
798
986
634
245
759
265
694
90
984
120
181
142
528
774
660
176
10
678
538
831
260
10
603
517
402
975
216
221
936
658
337
341
393
694
865
85
263
373
322
167
439
218
484
655
568
579
123
495
532
162
181
694
648
374
583
767
969
158
40
957
337
447
541
848
720
694
577
25
889
22
332
972
50
273
494
14
431
167
97
816
909
766
730
879
41
933
765
103
577
105
726
509
275
727
786
160
842
70
219
752
320
274
930
505
900
498
199
866
993
955
816
965
909
426
411
631
855
983
723
665
383
872
695
646
308
212
667
743
923
64
696
47
374
525
304
690
854
876
881
561
687
151
235
318
196
418
16
305
669
204
47
864
725
97
776
929
219
460
50
256
438
993
418
698
459
95
531
666
257
317
551
261
206
291
475
203
729
573
346
859
561
36
919
249
421
132
982
783
241
854
30
879
720
410
843
680
151
883
86
636
286
507
772
948
719
919
384
134
303
875
452
484
149
632
769
209
317
251
93
503
717
738
991
288
302
596
749
502
549
779
147
539
38
386
15
434
918
102
933
443
206
345
254
15
847
996
48
140
769
113
167
439
21
76
709
724
749
361
618
531
957
638
666
399
869
189
633
426
343
446
504
149
730
468
849
744
832
224
419
336
661
548
736
276
510
374
163
185
396
398
736
795
186
340
62
244
804
504
172
860
276
299
225
338
517
841
942
879
17
654
256
954
795
800
734
255
876
100
883
662
753
412
940
950
319
50
339
930
428
289
674
65
713
204
294
826
781
374
583
329
745
22
712
94
485
418
231
318
964
40
693
385
291
593
170
485
408
538
78
472
657
148
702
686
825
999
461
826
511
815
173
692
582
443
626
545
110
309
567
873
146
941
449
265
736
30
666
262
405
267
352
474
111
770
340
712
890
386
386
301
109
608
166
243
812
524
300
886
101
140
712
428
223
652
341
688
13
316
963
417
712
178
328
499
119
263
373
759
620
691
240
347
837
829
249
607
900
541
380
880
663
910
679
440
780
354
418
522
995
148
65
166
509
184
178
476
936
907
78
283
7
541
159
164
364
304
794
360
899
384
351
745
372
138
17
461
217
369
110
528
887
731
683
591
304
385
947
373
737
444
968
20
968
246
107
845
429
740
84
728
878
861
18
569
601
438
584
231
645
920
916
484
705
974
591
213
246
114
433
828
332
467
851
529
884
525
368
59
374
955
444
304
240
378
309
120
731
12
127
397
740
829
833
447
962
736
621
552
702
466
878
660
198
748
301
933
908
251
907
25
190
534
932
514
513
962
522
85
974
115
517
345
407
331
803
720
442
154
667
5
570
970
277
232
714
847
551
807
394
46
591
814
393
825
817
999
268
79
808
160
962
143
561
438
944
316
640
696
824
294
806
585
255
458
281
723
990
480
160
54
791
983
830
991
304
691
107
878
829
641
294
813
795
329
515
64
187
474
128
919
92
528
970
767
611
69
509
795
94
634
47
889
794
198
895
679
214
589
869
994
345
205
461
641
766
11
432
474
438
204
818
942
632
815
918
385
535
702
186
68
148
805
240
919
761
61
603
561
749
765
800
235
46
416
129
601
552
137
516
558
355
139
549
443
113
180
31
26
776
6
364
882
151
741
786
516
320
181
718
901
603
643
743
815
399
679
106
322
757
598
858
591
377
404
210
235
31
611
817
441
554
886
74
735
512
480
871
881
67
27
955
294
79
991
112
526
999
355
461
137
465
738
929
267
81
740
563
135
774
960
289
814
360
910
740
444
954
766
506
895
501
137
888
161
729
815
258
484
945
664
265
67
824
336
85
484
211
960
357
290
560
229
26
677
385
292
100
531
769
82
214
15
317
501
638
583
32
256
313
789
984
704
925
822
881
95
924
865
663
536
889
939
812
923
60
337
58
193
590
906
173
271
726
620
135
564
105
475
705
438
634
273
856
837
747
616
753
229
179
599
611
393
502
584
192
254
585
661
621
106
813
641
49
194
961
75
223
990
629
482
737
315
307
191
277
158
476
351
304
666
903
56
790
697
372
684
449
362
879
664
562
511
724
41
666
262
136
70
163
198
710
556
978
335
149
107
388
574
858
645
80
337
46
380
291
764
468
123
122
175
314
642
89
587
529
629
616
139
81
626
106
710
295
673
959
411
128
755
872
725
212
313
908
948
286
264
547
367
661
384
173
857
98
696
877
24
314
795
757
851
492
979
393
27
54
229
205
613
331
19
911
363
984
937
583
43
192
340
823
841
470
853
404
509
66
750
222
577
919
784
787
535
994
582
838
65
432
986
747
528
626
183
954
719
454
138
961
727
824
645
373
477
8
742
270
587
539
871
818
659
586
548
59
473
544
151
612
236
30
350
184
853
450
454
665
637
295
570
122
903
935
958
846
373
10
227
616
368
323
302
639
781
797
134
760
395
464
51
256
399
910
328
248
100
633
719
900
782
354
296
282
253
661
144
10
69
178
462
579
865
332
306
671
644
323
214
445
276
161
391
465
249
586
89
8
493
753
194
300
542
109
986
804
238
158
242
776
289
136
559
559
958
861
408
730
230
186
262
113
904
31
173
118
98
252
54
300
678
96
691
325
504
847
407
861
146
405
959
574
334
334
214
691
103
560
195
434
857
66
32
940
406
621
977
215
899
306
390
408
38
226
935
12
241
648
250
115
605
278
926
81
978
496
109
960
439
661
519
599
536
944
866
703
849
823
82
548
578
178
640
108
582
215
867
951
785
860
317
284
970
526
581
299
227
2
585
718
124
195
273
231
306
746
70
781
641
534
39
962
632
703
653
624
784
299
564
488
143
71
274
793
671
146
632
131
836
350
957
326
808
301
132
884
848
135
185
364
706
691
69
19
954
108
89
988
843
21
10
817
11
871
57
776
615
917
332
546
305
923
981
16
250
465
517
452
650
653
576
189
40
235
999
30
742
160
68
789
863
779
163
411
509
720
300
700
972
853
990
563
838
982
371
776
219
836
310
360
759
973
321
530
176
299
204
813
636
656
889
654
715
541
497
684
433
75
892
844
679
301
670
697
270
217
292
973
935
959
823
764
843
561
491
74
225
378
560
345
921
147
317
893
294
107
735
505
961
151
42
582
703
494
570
877
515
647
326
306
270
390
305
221
450
618
886
10
962
281
887
744
288
720
80
695
632
111
654
142
309
635
353
573
313
843
527
301
960
922
634
505
731
177
540
143
733
267
455
523
3
507
183
879
843
938
674
220
673
444
366
74
737
126
795
471
931
284
889
923
912
136
363
509
148
347
535
354
957
801
929
459
501
410
972
361
368
703
249
311
441
451
36
578
705
259
991
782
534
924
922
371
953
510
10
448
790
966
178
510
916
950
946
554
660
609
852
220
133
607
408
271
699
383
465
570
798
652
608
617
607
764
536
62
339
266
171
983
242
571
301
370
612
886
98
486
953
814
545
912
691
857
119
395
637
254
488
917
394
232
295
224
975
784
225
433
715
401
167
24
531
473
60
459
489
470
665
387
335
919
947
803
495
167
106
78
184
325
713
102
125
840
41
150
649
776
159
274
104
841
569
90
73
249
896
225
322
49
460
13
286
442
699
385
156
597
608
700
418
100
266
506
36
282
925
251
136
804
272
319
612
124
277
642
707
698
809
339
284
358
526
199
649
607
894
72
126
451
875
499
312
437
932
494
252
727
925
367
57
354
673
98
892
592
233
32
520
446
926
144
451
312
900
78
722
362
960
52
979
749
181
995
75
866
804
555
921
594
41
268
155
661
116
562
329
755
522
438
828
242
317
369
191
680
538
967
613
485
140
588
823
373
362
481
520
43
93
725
506
154
703
526
895
337
919
750
127
165
457
186
756
979
964
291
576
436
960
558
253
969
698
229
546
589
685
689
773
955
981
739
292
287
930
26
540
139
682
105
317
827
26
917
257
974
564
34
408
596
782
981
719
156
250
712
506
705
492
264
410
838
395
387
543
348
447
121
888
613
84
496
584
10
903
97
994
410
973
835
313
901
946
694
737
935
774
944
355
27
768
969
727
170
64
753
85
709
965
545
987
819
143
265
776
542
353
389
26
774
251
12
881
907
803
708
566
686
919
68
708
448
909
75
219
773
923
299
798
361
237
414
821
652
825
386
29
948
473
669
110
552
634
284
304
683
703
104
179
110
440
289
828
285
794
643
708
681
877
45
632
678
129
571
352
13
262
483
46
446
246
301
790
122
232
163
504
643
127
190
731
334
79
994
522
938
215
411
909
123
982
468
814
295
740
438
712
933
408
754
374
485
757
344
955
297
561
692
280
49
757
314
310
625
702
677
754
990
730
338
711
939
25
36
607
980
757
346
932
478
158
474
120
236
536
165
455
987
324
312
277
454
726
403
104
918
28
472
328
864
433
296
116
600
138
626
402
175
772
732
862
646
932
755
437
830
537
120
201
422
120
573
525
764
314
668
142
975
284
770
703
730
478
652
633
592
412
912
703
240
591
232
97
400
77
403
638
168
180
636
973
380
351
635
809
583
371
499
642
956
337
744
151
353
939
534
651
670
636
138
480
295
124
549
227
457
514
993
70
125
178
953
675
439
931
68
338
882
888
150
775
208
83
155
803
268
255
813
622
894
188
601
295
490
523
541
143
66
709
742
294
609
995
843
39
171
388
490
670
228
392
491
915
978
260
211
605
834
980
793
225
233
665
516
503
532
319
162
776
229
608
654
753
469
579
850
493
12
420
548
615
882
612
865
894
319
78
785
285
428
428
930
275
225
405
169
123
788
987
511
665
333
240
77
931
648
971
452
435
196
713
307
51
408
102
902
524
863
364
920
814
993
487
120
751
15
105
960
748
722
633
353
345
170
205
559
784
367
194
994
806
613
40
141
441
448
281
132
770
836
667
757
550
23
771
357
832
953
37
445
816
448
103
659
265
723
492
787
880
835
329
64
175
561
243
453
331
758
597
877
479
521
588
445
515
586
174
648
946
274
596
678
680
922
54
78
201
743
444
860
630
760
965
551
687
491
771
665
669
416
581
790
814
203
846
900
54
797
751
537
906
297
167
436
153
551
928
734
128
185
785
866
387
739
64
536
130
512
903
993
40
464
313
441
260
277
889
33
229
139
835
824
90
84
205
702
417
876
442
719
953
360
912
762
11
433
406
959
729
759
356
353
778
872
931
864
190
382
333
12
123
975
939
605
658
751
616
300
998
432
220
455
605
638
862
498
314
372
814
8
906
573
297
451
255
939
809
258
207
438
302
416
766
359
933
937
142
692
579
104
679
800
441
50
546
349
213
807
905
207
868
947
928
420
604
720
228
953
450
524
310
81
535
164
281
427
735
304
681
436
734
383
366
114
617
594
681
445
199
475
862
519
474
196
237
307
601
589
214
183
861
335
838
604
557
3
738
137
749
797
50
70
233
834
663
471
375
558
268
570
852
645
121
16
565
37
533
958
77
353
298
967
857
316
151
951
81
736
768
502
159
558
708
36
630
354
340
569
390
419
921
501
774
871
338
101
42
408
568
198
655
542
14
44
281
386
874
499
675
721
957
266
970
267
60
465
621
212
781
773
308
119
901
112
334
626
97
597
115
196
85
876
456
863
965
931
886
159
10
347
207
367
12
26
629
328
266
466
670
630
140
31
682
367
155
242
240
850
522
660
895
515
360
996
887
457
505
981
192
70
893
454
340
487
432
486
985
357
418
524
285
218
670
536
520
537
322
301
383
648
515
943
341
22
791
314
132
789
604
778
640
384
272
360
269
474
91
42
510
912
51
722
563
91
485
178
152
162
384
719
649
563
510
850
2
87
665
789
801
696
752
947
14
896
840
927
581
357
505
988
547
919
491
894
185
506
41
964
277
233
404
310
106
966
62
523
16
414
254
931
756
658
885
317
211
94
672
117
624
12
996
488
99
373
15
881
810
105
867
264
723
277
993
155
932
926
835
432
663
820
727
146
176
785
22
422
323
535
46
834
593
17
383
492
51
163
490
239
16
295
999
997
331
288
318
498
247
349
231
300
868
940
383
989
929
687
840
374
864
313
78
299
605
97
160
400
116
731
247
5
660
917
282
915
578
928
847
395
590
280
89
770
690
105
878
179
855
869
913
562
974
895
948
731
520
276
637
364
480
595
768
763
757
307
705
850
873
150
876
563
881
777
552
99
776
369
823
168
974
797
881
462
776
195
796
278
772
540
957
517
897
602
56
20
313
810
359
760
587
790
779
356
286
196
742
754
60
134
292
901
517
546
295
181
678
664
374
774
690
60
692
994
839
287
460
588
261
720
122
802
836
543
805
996
252
39
440
677
216
239
42
855
315
636
95
403
629
456
875
48
490
582
764
352
172
819
543
615
839
528
403
822
272
404
839
635
186
10
104
695
647
456
884
764
963
609
501
404
676
130
808
665
768
634
435
412
82
249
820
951
671
423
369
791
68
630
865
282
136
594
894
279
813
452
662
76
252
561
329
292
677
699
236
545
533
968
285
103
538
771
482
554
10
634
263
145
426
738
236
325
268
292
446
671
169
180
984
815
823
343
743
557
486
550
632
2
21
848
888
804
645
274
637
165
146
196
731
414
405
732
143
648
407
82
134
874
899
485
725
333
292
158
154
373
460
133
163
511
880
128
511
215
741
116
555
446
411
925
332
911
945
132
796
642
524
503
568
673
541
823
853
101
899
388
439
344
673
520
104
118
523
251
847
904
190
544
248
853
841
361
292
339
412
616
6
395
289
695
740
706
764
563
485
729
36
162
735
299
167
756
250
56
967
610
516
88
413
784
270
144
92
717
304
952
164
71
810
61
914
325
900
92
88
766
864
348
127
165
731
47
431
322
34
515
30
728
322
755
984
300
251
290
448
431
828
664
766
711
185
71
14
886
415
86
602
880
188
733
709
48
403
553
710
40
939
687
851
274
601
566
641
497
512
238
720
827
487
17
154
157
245
599
664
338
998
672
954
207
693
56
159
172
731
749
418
396
514
707
580
224
237
925
956
853
847
571
714
164
752
622
359
380
333
132
972
48
535
28
439
494
818
279
65
4
760
808
741
972
572
421
600
753
376
150
445
539
126
379
594
561
475
100
450
616
662
750
916
616
842
870
363
68
578
23
410
336
592
735
20
417
734
62
267
579
840
660
170
800
813
800
323
175
605
575
822
600
350
878
148
889
66
207
411
817
765
552
249
332
626
81
362
322
532
858
21
584
851
844
414
531
559
915
116
99
293
926
80
575
508
856
335
521
541
163
206
314
139
655
968
138
523
682
248
66
977
315
405
75
278
406
161
455
242
435
64
201
463
708
72
702
894
143
948
192
729
837
764
884
3
514
764
600
34
390
354
736
898
24
396
417
568
973
868
827
669
249
550
126
674
808
823
357
424
377
736
134
336
619
202
980
798
15
44
606
396
293
804
354
318
918
702
553
864
845
28
712
107
970
405
469
359
473
255
373
200
156
385
371
606
161
364
568
719
829
373
208
645
760
623
75
547
818
824
653
801
6
324
946
179
864
264
399
891
346
452
954
717
396
88
862
549
873
469
900
937
154
888
489
472
258
856
935
13
240
10
350
83
654
394
522
180
574
870
786
521
522
24
717
778
949
646
875
338
830
382
990
964
406
61
682
188
277
189
756
957
931
346
660
576
571
511
171
860
348
78
66
727
104
545
89
233
639
684
892
387
182
582
588
358
755
467
678
345
445
396
274
309
941
625
128
25
558
506
850
99
69
511
936
47
712
586
52
470
647
370
223
965
722
863
426
651
301
236
207
837
702
677
817
156
484
384
544
71
6
995
782
631
529
681
458
42
502
968
548
278
735
59
326
428
389
992
226
544
776
110
874
266
980
74
878
908
865
631
41
370
624
316
172
899
216
714
637
324
977
720
884
860
51
799
956
319
661
80
720
42
759
754
559
401
927
622
260
423
202
397
517
47
607
722
962
364
918
534
361
410
225
920
448
592
342
29
777
624
951
541
703
913
658
912
671
901
71
686
203
536
105
619
764
980
407
871
870
725
535
327
817
692
961
453
291
639
55
265
161
485
633
239
739
873
900
683
807
485
964
80
476
983
805
844
477
549
733
623
695
724
819
112
812
210
443
94
298
714
238
222
769
94
405
942
487
170
86
959
502
468
279
123
591
639
758
406
91
638
2
302
277
166
64
617
819
800
632
327
154
808
235
143
282
712
452
118
323
779
780
404
803
347
7
205
610
195
358
720
667
196
292
692
389
24
330
889
361
23
509
983
448
694
692
761
719
153
934
355
333
411
992
296
270
947
427
172
111
927
495
609
439
358
498
337
853
211
373
45
209
175
980
256
281
519
8
213
511
337
222
570
562
684
119
853
814
594
832
594
277
923
106
803
316
910
424
74
978
333
724
412
471
691
199
691
7
664
208
249
996
546
756
496
824
503
848
540
979
553
859
292
178
531
775
932
47
756
153
683
376
963
567
828
235
638
436
144
852
92
332
195
933
73
4
396
862
320
599
448
603
614
137
127
444
40
996
173
563
862
507
976
903
203
884
417
747
976
652
709
879
960
414
968
430
395
590
183
573
85
106
206
284
914
405
81
425
306
737
101
708
607
822
354
732
123
387
903
738
58
275
765
817
255
48
389
782
666
825
21
923
706
891
73
455
517
197
565
358
559
600
658
622
818
398
551
292
837
916
402
350
137
462
190
84
190
588
295
801
834
645
51
745
990
894
991
79
944
594
381
136
603
960
765
473
959
276
423
597
809
688
373
394
735
737
978
129
636
924
976
539
418
138
615
483
845
666
983
908
793
528
931
571
101
158
33
93
853
771
643
279
220
15
186
919
593
986
703
426
569
222
282
39
213
721
49
231
87
229
191
154
961
886
294
788
841
609
908
575
60
613
324
539
772
519
932
885
975
888
50
154
965
842
552
874
6
86
190
271
874
594
979
388
338
466
733
294
952
180
362
309
86
536
875
665
404
323
173
933
67
559
864
549
363
857
680
900
671
889
122
482
527
525
358
626
341
874
697
313
892
517
86
941
137
876
387
200
350
264
884
344
232
764
346
580
853
744
932
149
348
265
913
328
480
618
70
816
922
31
282
234
553
614
906
608
476
666
670
206
981
841
763
754
951
593
17
253
639
138
634
659
785
144
429
72
382
124
130
33
645
292
704
954
342
324
652
354
263
881
13
896
36
456
914
682
560
686
805
876
347
278
860
985
643
992
424
750
8
542
556
160
59
418
684
857
101
513
139
478
488
699
504
165
31
815
784
272
716
784
154
160
842
140
625
7
283
326
615
773
241
388
82
830
311
582
744
239
945
262
38
596
966
47
653
96
291
426
977
375
757
395
456
384
662
617
129
13
90
462
659
914
707
883
790
908
967
634
272
243
976
102
420
159
612
837
282
298
590
499
346
862
684
573
158
309
454
174
285
477
451
156
743
475
851
758
31
318
708
561
955
422
622
222
104
298
3
870
916
116
253
108
250
149
327
772
927
547
232
418
54
107
173
164
213
129
806
627
501
182
297
774
791
745
326
43
372
113
81
42
488
181
886
606
972
799
12
515
44
844
64
691
743
858
367
565
542
457
63
722
340
410
860
763
857
51
484
36
76
379
612
410
703
548
334
822
749
535
709
460
546
666
761
482
635
75
914
400
798
312
815
323
599
482
85
164
837
77
946
261
875
122
537
438
482
885
601
285
379
89
133
796
240
806
400
316
526
213
652
637
541
409
801
812
302
676
857
870
853
731
291
674
400
157
146
158
540
394
635
692
920
570
189
759
347
757
362
99
191
318
165
439
160
62
290
215
733
706
534
36
367
900
163
405
645
733
499
800
826
735
535
816
797
634
681
344
774
185
573
984
404
860
334
888
713
3
133
216
12
94
931
507
633
174
692
694
692
918
639
681
161
638
7
391
184
571
190
252
563
271
903
434
402
504
803
516
117
522
844
371
712
959
346
185
356
583
178
846
721
790
483
243
28
701
326
525
901
793
961
839
173
649
774
905
192
387
391
751
280
687
516
436
501
631
135
882
790
574
157
977
710
64
563
500
250
11
2
883
430
458
635
268
704
85
55
549
851
527
748
190
921
614
923
287
118
245
794
935
131
962
384
535
529
868
569
422
778
859
625
591
585
513
458
157
570
674
822
702
258
647
21
848
446
797
938
663
459
187
779
146
803
827
462
524
955
302
362
211
142
61
249
431
530
485
211
760
545
116
339
326
225
531
111
979
177
305
215
814
311
187
455
581
865
438
200
532
145
502
806
580
359
230
745
286
33
883
55
857
62
248
944
345
635
120
897
977
485
167
693
886
803
907
763
441
434
410
860
292
827
13
837
468
316
416
641
401
236
299
535
780
229
849
425
458
855
40
539
67
284
412
722
973
857
79
346
410
765
688
357
243
245
705
813
207
196
533
538
489
871
134
89
853
974
806
981
212
218
162
314
379
645
421
532
785
995
836
237
918
713
60
522
12
654
657
320
130
84
734
193
144
787
212
454
591
476
340
354
692
559
37
297
387
554
939
696
495
341
536
698
382
736
159
740
887
8
808
642
94
30
564
219
896
190
172
908
273
749
508
410
889
497
217
511
552
556
227
970
814
275
125
677
607
765
629
773
656
72
11
444
112
723
620
451
136
946
827
935
875
393
964
462
952
544
711
176
881
795
27
557
120
57
410
267
546
37
610
730
137
642
837
654
179
946
540
366
40
520
746
427
401
115
950
845
253
839
630
923
796
531
631
279
147
497
926
602
618
958
18
311
699
670
240
313
629
38
423
510
615
715
355
739
706
96
430
278
224
138
723
108
499
648
990
199
558
456
498
879
907
207
321
441
32
686
348
406
477
586
540
55
947
790
644
41
487
903
225
686
750
122
686
78
207
91
846
261
147
53
465
401
669
48
694
547
104
41
879
39
785
376
560
964
600
19
236
672
572
375
868
600
341
733
932
394
28
874
475
825
531
967
757
950
604
427
9
40
774
80
545
793
505
463
934
996
97
248
510
448
462
538
774
412
722
837
712
430
652
116
922
438
899
116
818
884
461
889
786
20
615
873
628
888
17
911
771
676
897
280
639
976
563
804
363
637
611
854
557
915
954
203
168
906
336
908
40
828
748
783
167
95
444
48
391
636
27
745
738
261
245
624
542
316
927
608
953
431
978
239
197
838
364
450
603
898
657
684
937
553
672
176
290
219
272
561
458
711
119
579
889
863
705
983
570
552
757
641
210
450
503
225
103
409
169
667
372
973
463
10
139
188
121
280
183
192
619
591
106
91
914
315
254
246
975
829
672
470
345
665
461
350
87
462
416
94
509
620
667
816
289
524
76
599
502
649
932
594
230
588
635
596
564
671
673
971
831
351
442
704
246
573
339
515
897
684
556
705
936
706
989
270
356
522
338
741
682
793
589
975
2
117
479
921
397
234
139
469
205
806
38
640
992
434
544
368
621
108
41
689
308
557
94
685
763
513
668
429
173
129
763
355
615
327
484
831
110
436
745
710
829
824
695
225
604
891
4
212
795
781
112
351
234
562
312
285
295
333
209
795
344
531
56
468
776
25
472
911
718
500
808
525
353
809
320
718
443
547
957
577
65
521
52
276
841
834
558
781
409
789
966
755
102
534
19
970
998
319
854
11
584
407
663
34
269
613
40
85
110
546
728
276
713
326
810
834
115
884
497
881
517
344
268
459
216
894
425
587
439
645
915
433
642
621
246
760
576
50
547
138
208
892
954
153
31
774
624
858
778
954
22
476
708
176
891
395
748
708
860
640
997
352
491
235
748
789
837
688
620
138
828
630
202
470
776
652
118
669
260
320
943
869
260
86
232
310
334
326
394
852
821
436
382
214
244
101
627
884
899
307
292
717
679
833
793
615
782
651
131
138
638
93
875
276
37
396
326
460
832
784
294
97
962
182
103
867
962
465
579
773
299
313
848
583
538
624
502
67
764
770
492
313
51
985
588
401
178
128
776
871
736
850
656
46
269
894
627
412
599
878
887
288
870
526
247
459
665
948
993
539
646
906
73
200
761
987
345
840
862
38
345
972
32
374
69
105
422
924
425
596
324
341
793
286
307
326
184
373
397
191
833
582
133
750
166
771
888
119
422
77
511
689
240
819
505
272
287
449
349
952
260
412
445
735
292
652
400
995
439
472
414
310
260
789
594
657
190
445
311
449
193
766
246
695
131
243
866
978
270
404
933
998
20
173
24
158
692
812
269
262
828
789
218
57
505
824
256
996
335
985
4
662
476
304
212
387
576
493
396
140
938
86
109
343
32
947
934
954
748
841
697
699
326
144
829
225
855
661
73
223
786
360
93
885
783
188
629
776
444
932
777
111
373
329
743
110
108
186
238
24
997
795
263
689
93
100
222
143
180
353
474
738
117
272
349
866
486
606
70
651
917
59
455
550
867
91
442
657
304
443
612
576
940
779
128
467
284
18
33
994
363
284
357
505
727
135
876
993
349
158
201
573
195
525
171
343
688
898
433
177
883
303
140
43
152
629
535
254
542
710
447
197
733
126
191
110
549
932
671
607
583
238
926
760
492
802
58
998
431
180
44
717
794
912
46
368
555
977
841
175
980
905
129
719
10
223
872
858
190
348
708
459
533
71
647
265
789
541
28
771
772
369
778
944
436
221
123
534
443
50
463
835
178
793
909
263
655
113
720
275
640
702
557
480
130
290
914
936
491
950
477
140
950
394
543
92
573
993
623
802
565
308
378
766
382
365
568
132
639
10
101
922
326
190
783
367
624
603
911
619
377
939
447
201
41
907
934
397
156
369
945
207
330
24
198
317
98
494
947
835
506
811
369
272
936
23
301
492
958
706
735
906
148
911
985
359
415
452
341
350
107
707
787
830
260
688
760
660
410
649
351
802
906
851
432
885
688
547
902
124
368
857
766
467
791
226
898
228
12
88
720
283
219
520
739
88
116
228
143
661
73
828
393
539
292
89
69
733
915
940
899
37
737
612
995
713
849
576
352
76
186
27
186
123
805
196
43
919
582
521
225
28
210
370
903
759
967
949
748
513
201
869
140
590
884
802
575
785
7
293
902
586
154
423
46
942
576
889
152
74
239
648
763
862
343
924
567
965
951
257
31
228
636
370
739
72
49
69
733
732
110
732
927
245
791
547
531
885
4
301
849
117
707
898
377
719
102
141
624
133
972
152
625
987
280
614
952
794
493
894
887
889
879
826
696
689
870
870
515
992
111
996
857
357
491
495
942
784
414
534
165
432
654
777
630
893
117
611
521
175
310
786
981
252
188
637
200
36
857
500
962
376
926
17
427
758
496
709
495
235
871
363
975
671
958
667
754
423
995
167
811
567
167
228
21
275
836
937
174
546
646
548
783
824
466
826
344
886
575
215
221
270
420
834
378
80
669
362
648
541
741
846
906
246
942
440
814
761
983
229
511
246
843
843
706
992
74
892
833
837
209
343
825
18
881
674
287
314
468
639
324
824
921
360
125
406
351
880
931
407
727
966
270
364
954
13
227
425
295
912
829
692
717
466
982
943
344
603
489
909
596
712
759
948
263
171
884
682
588
780
193
926
507
68
213
51
457
337
225
601
293
521
817
139
530
159
279
304
985
761
242
113
456
82
598
779
179
726
921
127
670
926
675
765
113
80
369
572
18
874
786
75
631
957
357
161
386
122
621
791
338
360
768
990
47
350
414
919
928
26
401
441
981
312
463
175
390
200
484
111
284
235
76
9
487
693
702
577
513
80
490
996
868
312
513
675
97
835
590
323
868
500
106
285
224
41
341
849
279
389
995
901
533
419
596
531
809
204
235
315
264
926
839
384
865
246
455
451
794
964
955
592
795
768
824
699
835
38
61
503
451
198
508
331
84
918
128
67
364
365
576
239
541
946
559
914
441
991
536
414
33
674
217
771
281
503
540
893
295
184
904
666
934
925
998
782
143
84
380
534
888
54
346
366
444
244
643
136
404
927
51
909
824
660
618
261
181
16
908
469
973
912
970
287
534
783
919
858
820
39
149
668
891
337
664
747
521
788
558
189
563
129
925
872
825
704
946
668
285
992
903
800
120
889
974
468
569
177
398
549
303
197
261
944
112
405
61
399
748
161
642
599
8
322
446
835
492
659
780
227
283
773
907
994
40
479
480
855
616
78
774
308
135
482
941
271
93
836
920
639
520
565
926
593
114
806
323
281
114
730
651
348
757
865
130
466
66
490
518
339
95
679
999
392
481
569
440
507
983
534
180
449
602
229
531
97
844
505
741
210
463
902
361
674
291
116
480
176
725
795
43
822
734
158
631
307
952
4
648
656
239
800
102
537
613
233
807
749
227
715
455
629
418
466
682
670
109
302
582
867
699
323
231
404
469
816
706
773
644
311
303
997
253
638
293
413
707
894
219
687
440
997
153
996
364
256
783
722
699
756
265
753
588
910
54
724
153
102
182
543
114
550
584
826
990
591
571
992
248
596
877
804
49
629
581
393
971
755
611
87
320
661
435
421
719
670
694
732
921
606
19
719
605
464
689
601
31
320
147
4
918
45
429
452
318
24
454
240
558
973
372
946
961
931
749
272
130
628
414
960
91
966
320
277
970
241
650
860
884
833
809
236
20
939
742
723
455
29
958
67
59
881
653
102
386
605
24
6
636
246
377
768
854
898
960
798
546
40
309
853
548
649
120
893
41
193
325
967
864
850
390
189
478
483
354
5
657
909
494
938
784
970
336
636
22
602
339
482
389
549
667
325
575
15
536
113
63
537
231
378
363
898
780
730
841
256
177
245
800
466
591
956
747
834
360
742
704
530
989
686
588
151
749
130
243
754
381
501
293
788
557
458
968
456
611
336
181
918
290
831
824
63
279
169
443
47
281
867
605
546
813
52
321
431
526
975
572
22
595
247
519
374
25
810
325
210
873
262
741
115
243
153
487
833
797
418
757
750
870
457
721
585
741
232
285
224
95
422
572
487
813
194
911
880
595
540
38
902
439
767
38
712
17
672
171
949
271
235
344
20
582
548
95
634
249
849
897
743
404
621
632
445
377
23
846
174
304
414
801
339
457
125
662
790
646
123
874
402
938
192
713
214
136
123
92
671
915
139
196
898
153
510
458
585
331
180
175
778
293
199
266
746
660
846
287
712
216
896
387
444
178
800
754
156
598
699
641
828
728
71
25
893
41
683
941
425
263
443
15
577
923
342
200
647
640
549
300
494
86
214
866
38
30
994
134
943
223
553
732
556
240
973
896
998
484
18
638
947
676
382
876
590
929
634
999
714
511
20
960
468
515
547
310
949
805
221
723
80
704
675
845
797
339
877
668
871
406
333
901
529
502
569
388
199
708
300
683
580
111
711
709
632
672
327
761
639
382
157
732
196
736
164
565
593
495
616
199
355
400
240
140
330
79
227
60
706
918
998
515
681
669
863
242
284
788
32
83
558
807
842
679
907
90
345
287
225
305
738
691
259
121
277
969
3
52
479
168
226
192
592
731
929
986
766
994
136
621
76
51
522
92
119
74
224
31
779
976
549
218
998
90
704
791
96
940
406
225
888
28
733
233
787
248
951
437
477
790
957
789
784
613
730
505
633
681
395
461
698
567
626
361
21
766
211
424
229
278
988
90
399
670
759
840
56
785
411
187
6
689
958
999
419
213
301
587
162
308
108
279
195
944
439
630
84
504
358
889
738
669
38
286
94
433
548
218
794
360
915
899
323
230
981
908
561
53
101
376
817
854
581
597
373
915
664
203
916
429
485
255
119
968
558
927
710
875
696
334
55
969
646
804
522
61
935
213
768
875
918
289
696
699
196
860
738
875
452
942
213
234
928
949
547
470
201
269
38
770
260
217
607
44
523
696
74
304
352
2
51
716
401
531
219
707
107
49
561
857
516
656
831
401
795
228
848
18
353
529
368
978
113
924
370
369
318
163
615
947
107
37
127
76
97
638
223
675
359
970
861
821
674
207
50
601
761
697
410
999
500
821
146
14
170
379
411
190
954
384
657
231
942
42
222
920
220
947
131
667
399
346
21
412
640
588
546
205
88
67
154
376
587
116
494
324
103
412
784
213
228
976
468
743
588
478
170
543
992
691
154
917
927
476
981
681
939
626
406
525
617
769
388
564
981
38
698
344
735
307
497
265
529
593
503
266
741
276
828
344
581
90
721
891
627
714
914
697
994
644
56
750
824
900
706
670
664
572
634
903
310
803
628
138
756
685
270
17
553
364
180
856
509
196
669
501
556
947
192
746
710
959
93
67
989
80
80
337
337
66
429
451
329
403
83
835
178
457
519
221
170
45
256
326
834
124
401
160
589
131
345
985
433
910
976
683
729
848
15
8
639
575
670
486
864
535
712
389
237
189
27
251
576
676
750
657
155
140
543
635
434
866
303
361
157
812
777
824
823
100
565
467
335
551
858
279
151
597
557
838
590
437
938
709
473
369
107
543
544
260
94
183
745
399
679
812
44
863
957
632
302
194
443
696
495
629
441
336
548
800
288
87
614
56
80
307
259
766
439
940
135
845
791
501
411
385
468
280
827
678
830
904
168
209
481
372
694
563
608
544
954
14
169
136
966
257
319
419
282
642
567
783
181
430
337
441
981
490
89
166
684
885
853
71
586
376
950
238
239
740
113
925
888
972
682
586
292
3
969
103
970
144
512
182
625
257
516
792
101
207
569
875
399
911
294
993
243
40
598
914
566
786
749
882
331
661
733
141
980
695
192
638
370
660
233
811
589
442
134
490
659
685
889
555
2
568
994
385
261
333
371
286
71
261
269
286
707
10
24
294
381
247
365
592
235
36
475
815
940
122
463
507
477
899
419
630
365
282
984
165
168
646
941
596
267
88
803
52
273
812
975
577
684
195
676
702
982
429
67
953
554
122
742
486
483
889
246
250
904
530
77
171
158
343
620
349
243
151
730
314
591
966
285
935
694
383
42
737
977
419
575
68
726
345
664
14
511
583
734
150
959
557
51
499
814
911
912
613
592
916
344
764
543
608
252
235
204
953
267
126
86
494
502
26
728
983
329
836
798
531
719
206
165
763
57
16
159
113
395
284
205
411
591
708
571
5
782
584
281
102
119
639
11
643
975
674
550
703
219
755
601
493
953
668
63
229
946
419
529
425
64
422
67
619
740
90
616
749
983
144
817
650
725
618
29
63
75
548
699
277
581
732
419
48
332
986
229
803
484
942
277
998
290
761
296
696
541
306
574
596
329
105
919
497
557
684
573
237
622
699
671
80
31
259
906
959
815
830
959
182
291
503
203
386
956
227
285
599
856
442
353
583
350
87
544
204
513
402
971
919
921
902
574
645
454
202
872
697
656
941
197
285
170
914
351
949
274
435
264
514
197
231
400
9
560
308
289
607
507
976
526
305
835
97
575
382
925
51
243
691
167
747
3
826
223
372
423
597
517
838
511
749
622
131
432
370
70
659
121
36
108
825
415
775
729
673
975
234
144
454
70
478
197
241
184
848
713
242
898
451
760
759
497
194
67
59
430
939
814
621
141
733
329
542
521
777
867
633
702
287
462
372
859
504
20
613
389
811
671
894
720
377
922
863
56
698
714
816
294
115
541
213
623
858
347
284
787
789
705
510
679
982
983
499
366
482
232
77
805
845
528
539
544
131
525
62
213
96
658
589
621
312
157
146
933
570
223
844
527
766
758
74
915
789
417
147
413
719
610
697
192
265
4
120
200
589
990
78
246
988
864
426
690
127
198
103
407
371
847
352
473
520
319
386
425
129
551
762
424
618
703
868
923
530
365
204
67
61
360
298
410
228
924
699
519
332
824
908
697
356
95
215
424
620
622
61
210
554
943
3
258
997
323
884
207
4
852
280
608
48
596
565
148
608
147
807
863
283
11
888
319
583
966
122
319
207
173
88
765
614
315
450
430
654
252
293
55
266
418
494
355
402
964
863
449
291
234
325
566
497
410
226
805
855
201
419
442
584
486
784
601
650
194
211
354
28
372
506
5
32
780
785
174
515
95
878
845
615
413
96
983
892
600
40
210
740
424
277
851
439
959
675
225
330
489
6
441
255
231
810
910
154
895
108
37
889
604
421
617
300
919
298
469
19
341
102
753
356
545
403
569
549
495
809
229
389
915
756
821
127
209
458
110
22
760
692
436
449
126
247
611
556
140
957
803
26
909
293
32
438
581
4
385
748
747
494
864
966
996
33
45
840
942
660
148
195
6
749
147
115
585
438
360
415
850
893
729
173
376
461
20
183
558
359
751
910
11
782
553
571
921
779
340
65
523
249
493
324
762
178
835
389
952
122
903
728
234
24
816
149
780
859
396
451
901
655
35
718
748
52
863
692
233
935
606
324
890
17
804
571
562
644
39
596
416
961
250
345
699
276
975
799
700
68
492
15
551
255
213
814
448
295
373
955
880
582
185
155
950
227
316
860
275
967
813
18
222
984
753
713
770
131
746
312
10
208
757
672
253
145
146
40
484
589
446
849
450
321
113
400
472
83
850
931
499
764
394
615
667
716
239
179
560
950
875
51
60
467
14
763
203
927
267
652
152
595
193
634
143
687
584
331
930
875
49
561
305
122
115
366
36
398
976
920
28
534
563
657
238
485
17
682
127
226
566
260
457
721
100
185
373
819
492
223
412
527
802
152
62
648
751
931
173
761
970
213
155
495
511
796
191
302
341
669
459
588
974
451
666
853
258
690
220
818
15
165
897
217
280
154
823
814
644
168
711
235
25
906
280
263
671
827
175
906
737
35
118
559
228
220
124
622
968
170
431
165
19
401
357
657
980
368
627
698
244
809
741
154
846
817
731
9
994
548
799
349
24
366
839
77
583
152
388
857
473
545
63
358
521
676
981
761
987
950
996
732
625
648
961
580
855
777
331
869
71
367
543
902
970
677
911
699
348
166
79
453
604
436
801
554
441
863
117
781
198
395
186
28
29
355
484
12
14
970
91
222
714
175
466
863
124
677
759
980
516
572
347
133
957
391
385
629
498
510
123
173
454
514
985
439
825
687
282
586
668
468
2
586
17
768
713
101
969
585
97
924
282
470
837
992
611
975
525
771
433
447
814
98
61
943
782
733
89
946
677
667
688
472
115
236
293
932
933
306
597
390
619
548
847
580
4
378
838
96
552
385
904
906
797
904
161
404
222
610
478
550
320
483
153
370
814
163
411
747
983
376
254
545
553
902
246
233
770
815
46
9
149
438
437
184
93
300
787
300
259
483
548
22
444
10
862
756
344
233
431
860
532
655
144
654
201
234
477
794
197
774
656
517
550
432
647
434
830
904
347
280
696
516
768
328
995
991
110
831
449
522
791
529
504
939
469
286
661
709
564
261
157
991
784
376
456
491
55
834
772
918
519
326
238
972
325
896
330
681
455
817
264
457
696
287
184
537
189
310
271
390
872
166
264
757
612
442
252
118
471
244
703
738
723
548
622
352
454
984
347
262
366
656
500
201
29
610
222
844
597
861
647
684
185
334
265
846
496
475
522
109
344
712
699
706
945
617
309
69
986
474
831
687
255
727
296
729
983
916
975
582
272
7
314
848
497
20
77
78
730
976
251
42
498
379
358
844
769
150
210
358
564
8
535
151
656
246
330
796
941
171
312
470
558
222
881
83
682
543
521
855
767
607
110
135
39
717
848
872
343
300
256
721
484
450
632
951
354
444
737
172
669
301
325
446
807
464
410
772
729
444
988
700
551
444
488
869
66
879
961
891
327
765
322
606
143
328
651
345
563
36
666
250
764
671
514
987
635
351
961
523
107
944
194
178
684
302
747
957
893
355
861
494
642
13
557
83
235
333
480
194
4
689
282
110
551
933
788
93
548
392
931
409
50
391
711
138
728
977
652
637
961
733
16
363
956
252
148
599
47
531
763
463
43
930
626
712
717
173
728
376
834
194
538
428
332
838
557
455
567
527
814
362
741
192
190
615
586
286
559
399
901
315
844
55
111
162
808
149
58
655
551
388
60
463
551
169
855
305
304
834
526
500
307
899
276
915
658
28
937
905
588
515
441
9
566
975
502
394
691
817
157
438
127
359
317
722
543
890
432
915
142
456
581
2
452
161
614
687
583
64
756
55
8
242
631
8
479
903
358
551
658
58
129
404
16
284
303
882
681
749
520
69
362
109
806
389
250
368
889
87
763
338
786
440
363
14
940
129
201
285
940
723
574
736
144
781
861
117
183
446
710
760
786
764
245
98
176
980
420
221
932
234
564
620
993
217
216
756
227
871
826
158
818
582
361
49
949
402
677
437
259
50
364
342
147
518
551
589
60
333
24
797
838
466
55
669
949
931
658
987
487
745
800
228
177
981
959
390
474
509
66
223
528
205
430
399
302
267
802
101
466
935
49
794
218
712
929
88
79
356
497
966
610
105
534
374
295
290
974
837
832
88
947
513
887
405
70
905
584
323
993
497
137
426
618
558
340
141
761
201
964
901
748
635
107
13
943
685
321
128
253
288
779
223
987
157
90
29
159
529
943
138
345
593
340
973
528
228
556
872
990
260
608
73
378
379
49
352
97
12
905
938
662
461
96
307
185
374
418
65
99
911
332
843
663
85
946
365
770
138
216
753
882
289
46
578
944
410
459
521
459
540
497
932
229
420
464
9
979
121
497
920
280
885
756
8
359
373
890
511
321
631
39
637
29
693
421
245
381
466
434
382
662
484
909
344
297
942
646
412
775
798
532
537
370
732
546
574
837
865
265
526
696
646
617
171
167
979
422
927
283
238
321
479
789
65
719
722
555
489
385
252
541
830
807
617
427
74
684
568
37
12
843
39
545
281
177
677
253
607
320
195
230
930
428
491
606
257
171
593
91
78
203
191
116
676
29
830
51
866
308
181
352
392
934
879
631
748
848
29
879
90
137
152
333
660
138
183
88
726
865
514
798
555
932
103
218
711
421
468
842
612
79
640
746
795
726
333
487
897
352
253
854
711
33
750
509
214
738
525
28
144
389
784
749
701
319
766
735
689
265
419
179
479
945
392
766
341
418
185
826
926
325
850
614
784
597
551
954
422
205
201
750
280
168
999
630
122
131
480
322
436
62
27
555
95
45
473
471
218
757
962
769
73
79
203
30
299
550
911
847
710
717
500
333
627
952
307
720
936
393
529
489
592
188
322
757
85
550
224
303
645
409
263
794
993
564
998
971
238
739
92
374
505
235
68
157
694
470
824
154
895
266
843
350
118
105
733
707
924
395
592
427
729
708
993
651
87
83
163
655
704
73
450
874
251
435
778
845
520
191
734
26
576
765
858
524
156
712
227
178
832
554
656
280
355
214
668
704
939
298
665
945
717
348
789
905
218
39
413
394
49
226
232
79
380
944
598
207
713
366
633
190
472
778
227
215
111
560
316
69
777
315
960
517
596
25
78
567
30
78
263
191
195
583
180
508
987
75
548
30
469
61
889
728
626
33
563
597
488
912
669
323
324
215
653
384
859
249
618
860
503
504
418
13
622
545
656
260
592
259
911
875
18
304
246
939
516
874
495
151
123
268
700
744
550
985
495
656
67
869
208
355
956
743
832
622
820
44
330
473
95
167
929
94
437
199
835
633
699
43
400
99
395
201
950
768
187
387
377
192
287
183
524
17
924
453
255
462
322
550
16
143
888
429
738
143
323
770
868
834
261
582
484
611
634
332
984
30
469
483
60
327
673
164
149
324
852
999
165
577
626
948
351
918
373
75
789
865
128
35
255
216
120
354
500
709
619
651
235
926
155
834
707
334
547
426
961
255
865
766
992
616
554
594
378
888
914
16
12
594
507
179
970
150
547
613
80
878
689
87
753
651
763
310
418
948
40
804
821
566
633
453
837
894
935
583
37
108
16
27
251
443
260
647
193
707
151
93
63
371
517
696
326
565
994
757
82
366
782
437
763
658
977
281
627
396
277
602
121
450
336
337
382
898
412
465
274
908
748
9
243
558
139
546
295
964
835
973
642
327
275
402
573
283
848
848
482
530
390
966
389
557
869
512
222
148
909
772
872
476
804
438
4
990
965
387
205
448
44
598
876
616
935
590
936
531
808
918
894
528
757
17
470
308
683
204
637
912
70
717
803
67
945
481
297
418
364
190
650
829
395
434
289
930
658
853
600
339
738
144
506
875
209
394
830
210
107
989
822
337
597
407
44
146
207
654
775
731
875
132
184
413
399
884
652
827
562
187
314
57
671
849
51
364
610
951
767
216
318
813
863
167
455
689
852
834
112
400
328
477
202
193
27
262
426
823
947
13
518
340
757
702
584
165
142
300
622
949
57
583
862
77
804
858
917
446
492
559
32
758
335
737
874
938
81
621
83
406
852
120
717
484
492
847
379
715
852
24
987
201
840
547
502
45
675
287
107
333
515
951
631
527
646
975
95
376
520
724
274
609
289
223
110
591
169
268
2
84
34
36
585
426
608
680
632
356
456
122
74
618
168
969
789
477
840
856
163
286
936
662
518
671
828
988
300
780
119
287
233
761
669
109
911
461
30
358
797
154
325
424
844
617
905
177
871
480
685
812
779
831
188
335
781
627
593
869
910
622
956
833
401
668
124
576
542
202
943
194
532
285
415
703
484
714
841
251
700
525
805
679
743
576
383
213
374
674
264
265
206
824
811
644
259
804
234
331
334
467
757
202
136
923
130
374
271
159
815
450
101
643
776
253
73
799
683
447
727
595
390
216
432
108
434
208
244
354
848
17
641
882
775
308
171
625
695
378
269
991
597
612
299
833
171
325
125
117
118
199
808
950
77
657
377
229
901
501
746
417
533
152
680
355
699
464
79
377
655
983
600
232
256
332
242
56
100
607
146
309
348
878
895
39
543
836
68
682
536
620
391
437
780
213
586
7
281
945
312
700
988
599
463
645
773
787
313
468
476
153
74
571
817
841
825
37
655
503
265
936
363
429
604
133
238
544
83
635
480
75
591
852
220
471
905
799
299
278
135
62
565
483
603
297
308
736
511
147
322
294
751
332
750
574
333
464
121
336
417
199
888
871
112
269
749
255
564
337
803
799
272
480
970
255
723
995
626
775
711
221
558
221
244
842
361
664
866
444
543
186
572
212
711
940
563
32
677
946
101
706
698
690
427
417
709
635
123
194
918
771
655
750
516
837
492
669
36
445
520
882
363
966
972
115
541
659
744
934
69
988
166
836
30
670
190
76
841
538
766
540
503
543
539
859
790
965
562
762
304
101
922
706
687
894
997
936
812
198
898
180
35
85
86
627
731
866
959
793
918
299
576
220
450
791
329
398
287
65
514
138
918
698
846
535
966
376
423
825
526
703
931
710
37
759
905
787
164
580
488
94
171
433
937
231
879
506
999
393
205
448
333
658
73
279
313
391
627
639
479
799
558
119
618
699
868
429
400
108
767
422
49
617
745
467
623
903
720
747
520
270
361
56
591
702
544
226
26
752
153
812
445
992
16
203
93
633
116
85
243
952
157
388
512
227
680
625
204
812
780
996
869
585
753
225
590
475
474
341
486
244
887
263
243
757
200
359
146
479
85
731
142
492
595
197
29
207
991
800
948
248
427
350
561
936
897
483
851
740
920
15
990
167
864
200
734
175
464
892
599
797
502
942
438
308
464
110
886
183
733
415
388
104
916
230
367
152
630
422
187
305
903
675
961
588
673
262
621
234
772
410
727
457
804
752
631
263
826
334
375
870
61
495
231
919
164
880
171
524
605
524
320
456
857
317
28
9
137
677
434
43
765
919
754
881
473
142
550
877
865
246
676
954
434
826
517
100
411
783
423
341
850
961
163
413
431
828
312
125
35
928
161
915
617
159
334
551
518
586
18
655
587
252
296
921
996
509
136
570
35
332
769
44
974
236
189
862
880
466
454
532
705
668
999
173
762
18
886
407
421
183
761
980
548
946
280
820
416
8
667
61
197
961
787
760
240
228
793
543
882
734
152
170
619
793
908
16
548
969
20
732
2
801
106
787
984
39
585
576
538
105
806
250
798
751
798
393
931
12
441
814
306
510
122
907
115
744
184
541
577
336
22
341
567
389
757
726
7
681
151
159
762
254
684
589
5
965
37
735
370
274
54
297
959
749
115
473
370
781
621
86
703
502
909
281
984
497
494
742
50
394
355
990
747
921
198
896
278
116
329
265
235
574
195
819
796
263
214
170
783
729
753
557
690
514
188
211
602
805
852
971
730
697
234
971
192
64
999
229
821
313
262
545
961
638
233
603
629
563
587
335
32
347
743
15
136
904
196
481
48
654
593
752
313
19
381
36
374
615
713
426
851
940
35
572
941
482
562
755
245
181
777
805
268
718
519
7
992
590
9
308
829
212
557
37
289
733
271
784
502
922
541
124
776
229
964
977
360
557
610
703
378
205
387
518
195
956
801
901
855
100
826
792
302
980
352
841
652
786
751
358
211
992
10
155
661
353
235
942
351
56
65
541
291
907
785
300
757
162
406
620
667
610
270
152
926
311
623
454
56
913
412
654
975
35
450
402
316
903
31
898
174
758
105
808
859
402
161
637
934
42
422
760
473
579
485
324
429
498
31
268
362
646
92
273
949
662
891
925
796
873
795
743
319
397
243
134
751
324
837
881
678
893
46
886
524
143
111
920
429
904
831
306
448
553
712
37
348
49
834
802
511
874
179
387
400
478
547
43
225
335
592
367
691
110
834
984
267
918
893
475
211
939
305
43
630
708
228
958
765
608
820
454
720
557
722
623
835
849
301
904
345
466
510
381
487
243
390
16
923
953
864
569
665
813
125
716
25
515
712
322
589
743
891
84
351
5
42
481
815
142
365
474
814
62
772
666
875
679
714
173
847
712
842
137
420
512
627
398
568
648
151
160
59
362
735
205
607
408
644
613
283
539
289
264
289
718
137
752
565
749
107
696
125
813
34
79
999
603
739
30
371
73
563
222
286
362
818
152
37
557
283
713
391
387
307
794
18
32
397
130
969
630
11
139
906
769
356
436
638
591
791
76
721
311
161
61
977
230
971
641
373
396
971
951
779
146
26
135
21
786
557
352
991
183
543
546
44
681
707
613
94
787
426
523
184
109
280
358
648
934
700
629
710
839
869
548
386
718
631
829
176
138
448
607
446
831
209
259
672
113
168
333
175
86
686
314
373
104
129
608
776
920
718
926
975
715
929
988
997
727
922
742
887
382
929
169
958
798
571
669
780
717
983
621
981
245
896
565
979
314
738
828
219
234
683
902
770
321
227
253
26
377
20
964
54
702
437
660
626
735
581
947
471
469
134
172
66
616
542
645
668
799
865
678
757
169
624
160
761
849
559
227
423
200
345
514
259
283
964
862
960
386
421
855
921
469
452
27
275
36
94
818
823
46
508
198
659
203
841
849
718
603
833
620
782
606
670
228
550
509
228
661
516
910
945
58
221
199
344
839
408
388
393
376
859
344
556
538
750
209
152
968
282
671
56
123
735
450
808
42
727
124
452
605
713
231
298
658
816
767
738
918
383
194
276
663
554
247
248
149
721
151
992
176
429
748
190
149
398
894
423
416
395
546
152
694
203
282
914
953
252
297
174
838
640
370
365
888
542
811
540
88
745
261
297
532
359
840
900
899
633
767
439
973
890
784
503
508
352
125
302
832
352
9
194
373
396
51
368
398
382
46
676
733
773
648
146
667
341
460
148
413
350
698
551
982
556
773
176
993
261
166
697
662
422
625
929
51
818
747
829
232
601
575
60
238
308
583
726
63
149
953
41
566
239
369
249
622
197
801
997
7
724
365
74
657
199
923
329
640
936
330
341
617
117
592
352
329
48
338
211
919
516
93
249
455
927
359
630
157
243
381
674
370
43
413
567
373
427
395
44
904
390
822
123
549
33
400
746
24
254
229
672
693
606
216
898
683
874
676
702
937
225
80
702
949
762
725
263
154
570
551
107
111
766
417
533
959
838
624
702
573
575
214
665
75
933
288
204
148
19
792
726
846
484
904
770
230
137
820
48
199
199
93
19
370
492
428
377
352
426
359
759
557
365
745
652
238
479
193
714
607
80
188
879
335
768
335
542
632
998
463
644
731
994
124
182
381
889
423
948
661
825
508
301
805
624
128
962
250
860
576
15
894
934
19
88
647
275
172
84
504
170
238
266
206
241
965
698
618
471
441
571
532
811
379
681
426
241
557
727
995
83
755
636
938
287
868
94
772
715
536
445
4
328
236
932
548
700
951
8
206
59
82
392
646
148
649
84
381
535
647
646
760
786
947
6
344
954
247
133
976
821
642
596
822
539
813
887
159
686
82
161
958
400
109
845
747
416
644
982
33
487
742
758
201
674
22
719
537
780
229
278
89
918
578
960
453
162
425
472
375
381
276
589
536
263
379
787
556
769
207
928
262
628
865
136
106
771
621
568
414
550
776
766
125
788
685
561
205
572
216
302
556
760
921
20
207
634
233
874
618
385
611
473
163
202
978
893
855
467
154
442
416
775
321
124
223
179
199
210
697
596
670
272
272
950
520
63
647
597
84
212
677
603
455
399
170
824
150
572
821
879
2
556
271
971
168
949
248
417
315
66
749
883
225
252
933
321
845
786
141
730
760
646
467
150
462
138
905
764
725
946
392
649
655
407
148
413
357
214
792
229
763
482
585
203
397
933
189
750
512
693
753
173
92
195
639
497
216
329
495
516
76
652
729
523
98
786
195
278
648
538
375
161
260
657
386
28
386
902
58
971
889
91
340
558
141
27
77
402
576
332
645
585
613
535
359
83
449
939
837
155
731
370
30
892
84
553
961
792
305
760
353
723
801
97
123
345
656
961
327
204
879
337
547
621
482
831
166
580
10
785
973
14
598
408
619
479
905
293
372
441
929
951
707
569
803
858
706
496
379
794
301
623
706
198
125
779
323
40
385
865
995
792
799
319
70
459
853
657
319
228
157
351
805
620
964
906
311
405
799
510
896
490
748
601
945
995
373
378
20
223
124
415
429
21
803
284
450
463
756
136
437
116
253
235
488
917
231
821
610
475
861
683
257
74
643
649
255
601
362
895
899
31
914
746
432
446
702
451
555
939
320
664
487
95
120
501
725
962
499
645
688
373
926
956
437
437
712
48
554
870
851
543
983
27
817
196
693
336
210
896
992
23
693
853
316
262
234
103
652
824
182
82
791
752
428
431
774
182
396
344
936
121
478
602
348
162
806
62
741
442
568
751
254
981
877
60
912
468
59
780
151
430
846
834
228
637
346
963
58
557
370
443
221
137
662
34
790
615
897
378
964
654
127
806
595
375
709
246
489
233
209
502
861
673
986
476
723
653
535
826
419
617
350
767
686
237
692
699
439
66
171
738
845
419
645
727
272
390
767
54
93
778
890
372
116
67
648
796
249
64
876
594
685
628
512
346
993
915
137
797
158
404
174
191
333
410
244
942
647
316
45
832
302
881
275
374
315
285
773
388
407
327
820
347
607
596
431
652
941
121
434
849
534
403
44
261
906
7
579
512
339
603
65
305
466
392
621
119
812
139
182
585
185
288
236
146
538
750
747
211
906
721
70
185
26
474
762
249
604
856
452
536
691
454
582
793
338
135
93
739
871
843
409
426
923
676
569
575
966
35
132
348
940
355
255
293
321
881
969
200
416
431
471
445
174
3
389
635
454
776
315
705
207
365
747
294
936
953
462
29
500
301
542
403
654
148
197
589
3
460
287
579
983
843
870
532
960
548
852
556
511
949
125
881
723
739
137
676
402
875
465
67
543
69
851
182
327
709
923
306
764
269
980
206
252
789
283
438
526
491
805
216
232
493
491
914
393
625
733
224
194
552
81
256
750
518
766
957
350
178
514
402
781
78
854
207
108
499
745
612
470
548
229
786
305
723
146
524
999
81
753
812
927
589
117
985
115
945
893
171
970
210
156
988
796
963
804
357
577
209
131
470
344
598
994
470
370
786
954
77
861
425
779
688
393
752
845
857
383
891
262
922
515
761
220
460
285
95
560
661
392
758
969
630
900
585
182
192
504
60
20
393
438
411
384
638
447
777
142
925
628
220
12
379
250
141
321
295
183
283
538
413
199
703
970
639
127
475
5
698
196
904
219
32
882
347
264
251
293
856
421
789
310
614
998
295
999
890
139
21
822
752
857
528
483
612
968
910
360
840
582
177
725
574
893
254
946
374
726
12
719
505
388
825
233
873
531
655
528
291
306
578
575
864
849
177
51
104
911
224
124
246
585
68
476
31
486
614
648
513
357
819
703
749
755
690
387
679
112
287
610
360
102
625
221
206
466
953
827
391
920
726
649
797
294
670
81
858
82
161
908
100
129
202
970
869
953
358
418
540
993
635
915
597
600
349
464
695
140
259
658
344
693
372
69
566
749
172
657
510
787
332
167
179
881
984
981
676
953
843
478
409
471
748
539
244
513
72
438
777
636
730
171
537
973
987
26
365
236
936
474
783
633
837
686
991
532
502
588
120
120
367
708
413
443
251
237
533
13
887
895
15
457
691
590
77
553
186
883
384
894
959
410
97
552
883
478
875
536
394
309
140
159
40
116
178
836
952
362
617
112
869
411
888
549
452
148
818
390
351
721
549
869
186
680
87
424
317
49
349
241
819
765
545
35
972
385
493
812
264
125
93
806
159
502
554
374
700
511
374
192
710
866
827
981
388
914
344
243
997
195
991
364
403
29
877
152
720
878
418
719
478
437
6
333
379
932
339
493
952
317
720
304
932
967
150
347
817
645
261
105
224
542
528
989
529
843
725
258
487
475
330
268
818
46
925
60
166
856
585
516
644
104
570
108
235
861
667
608
611
968
706
622
670
147
233
913
105
949
11
544
272
944
610
953
867
169
418
253
446
987
743
953
263
564
550
362
326
922
94
293
341
775
293
363
487
79
561
342
904
500
835
272
291
951
596
483
542
249
171
184
927
519
275
818
285
840
485
921
180
575
31
585
94
480
598
586
318
641
946
494
706
609
125
977
939
827
85
420
641
215
995
285
983
915
113
641
757
664
779
14
740
142
140
900
601
78
923
203
753
13
190
995
323
33
968
66
876
817
211
186
959
635
695
964
165
264
233
347
672
185
639
951
510
80
204
755
686
197
503
310
597
624
681
738
72
499
446
505
863
186
947
403
111
927
784
971
134
487
271
569
951
243
600
568
622
139
325
916
17
960
85
510
158
300
516
56
850
784
221
619
701
391
261
940
934
434
663
236
425
393
925
31
232
11
803
808
85
602
250
564
663
350
871
366
319
975
733
821
248
38
225
268
247
237
553
389
803
309
204
905
23
866
277
555
274
928
786
71
574
436
505
654
715
171
614
174
615
73
343
686
917
856
426
318
272
159
9
281
168
505
360
761
36
986
360
371
84
199
193
481
950
289
25
207
588
487
715
249
98
847
956
480
6
707
866
228
836
204
126
580
336
557
297
201
773
646
627
245
196
909
637
339
240
8
112
316
581
44
391
127
834
745
364
816
296
802
530
432
362
927
451
155
65
481
84
191
184
822
591
474
580
46
90
733
456
37
786
985
834
6
257
156
994
345
866
518
661
372
788
124
903
941
835
226
447
328
265
207
47
970
235
751
711
722
575
833
680
253
282
213
508
702
768
413
791
424
112
121
324
273
451
233
233
870
393
993
859
183
920
281
571
378
372
180
403
745
630
433
176
649
382
577
332
177
743
567
677
471
275
392
369
756
750
851
74
652
632
525
141
264
790
928
913
731
624
292
940
182
220
717
988
768
747
146
602
954
970
176
625
666
759
727
43
432
29
109
95
122
661
536
42
657
551
252
609
788
701
407
954
802
519
542
662
551
203
237
150
53
128
448
876
31
130
465
722
435
697
746
635
455
805
511
608
370
157
437
753
347
156
674
306
515
200
399
512
3
455
488
677
976
89
721
693
71
107
787
479
542
338
139
775
805
610
588
84
157
635
293
905
793
185
27
911
308
565
628
90
696
104
992
937
157
301
488
299
639
248
962
727
49
981
971
195
42
784
48
559
906
349
362
678
627
232
282
514
856
151
652
320
432
235
2
130
607
489
543
573
639
777
577
953
588
18
725
377
335
303
93
305
453
303
623
711
781
957
176
954
147
766
628
609
685
945
490
553
551
107
694
587
490
350
751
260
548
488
854
112
975
634
952
67
185
85
427
392
679
310
268
613
489
613
770
609
630
250
168
850
52
239
490
381
917
12
705
262
836
519
411
644
486
514
90
215
405
248
13
396
781
376
215
509
560
321
29
441
41
541
286
239
727
238
508
621
709
361
834
508
635
571
125
207
376
246
237
913
394
645
166
451
783
679
288
103
977
311
447
721
816
262
319
776
606
305
282
465
985
981
547
755
855
557
675
963
639
977
20
847
220
789
425
291
877
388
667
649
550
597
519
984
367
808
535
132
683
495
295
448
235
904
607
49
851
928
762
609
471
779
801
267
841
491
180
235
232
205
518
180
864
188
410
213
338
103
545
903
825
872
204
698
109
391
276
625
149
151
848
12
931
424
396
758
394
157
451
458
744
498
124
624
838
548
723
428
224
453
616
413
881
226
79
62
561
418
484
274
686
508
907
576
11
485
507
642
494
906
910
615
255
749
274
229
354
553
823
743
141
724
938
386
951
211
34
561
135
433
992
635
152
254
140
614
510
370
473
894
707
310
156
429
326
203
273
27
563
639
749
479
112
251
536
310
425
72
262
977
32
818
138
158
462
541
730
997
302
348
144
453
654
485
860
113
919
755
668
179
727
754
209
704
838
424
705
869
558
413
713
265
604
318
432
676
317
705
177
9
559
157
697
618
145
474
612
690
566
498
330
901
982
280
720
871
964
17
271
319
901
204
80
132
436
72
374
7
78
395
136
296
15
320
587
480
416
980
710
324
236
876
574
873
60
170
18
292
587
936
783
15
59
153
137
936
904
813
980
29
941
106
79
578
455
436
72
639
557
100
626
448
550
769
685
932
794
243
647
432
984
306
920
512
531
72
343
854
483
141
360
451
206
616
955
155
228
371
124
19
765
718
311
823
235
767
124
995
351
265
883
842
621
375
909
326
107
21
879
723
9
163
923
33
784
621
78
505
630
317
884
742
529
611
491
857
722
848
722
909
463
422
766
636
761
683
925
736
616
632
783
354
750
740
935
96
908
54
706
701
172
212
223
526
198
920
264
581
231
787
343
805
587
362
314
678
476
977
739
659
995
512
316
76
982
392
782
384
789
950
243
261
433
558
914
416
231
687
246
43
85
362
475
570
54
729
627
216
784
205
215
467
495
57
62
226
499
237
741
616
715
167
639
657
842
830
835
384
773
603
669
123
494
422
104
205
616
651
550
501
506
532
646
55
699
581
672
378
195
17
913
234
456
605
854
474
671
439
387
733
150
762
996
323
556
226
707
458
489
186
17
695
151
886
731
352
15
97
220
518
501
698
532
220
733
284
103
799
391
199
905
326
327
508
439
673
121
601
314
24
976
27
674
555
23
113
556
851
998
221
486
681
489
294
241
979
129
368
494
461
938
438
152
9
360
190
89
374
454
438
690
412
4
670
837
747
446
335
288
605
353
532
805
831
628
325
159
959
999
941
658
892
593
846
561
942
507
365
185
407
378
990
288
49
738
116
250
568
937
873
976
490
272
738
587
990
805
682
987
348
73
942
829
886
865
709
835
428
227
615
650
493
836
937
447
416
165
76
654
752
609
427
662
941
822
333
109
496
642
173
226
62
130
621
698
216
569
4
856
528
942
565
456
522
885
664
392
13
327
927
838
325
652
136
236
339
881
484
350
348
450
193
198
569
676
902
8
970
926
348
620
837
718
61
95
381
825
26
410
152
465
378
495
142
564
741
653
16
635
186
193
300
785
24
503
975
981
376
669
496
456
386
434
267
919
104
226
89
347
980
695
553
436
584
850
299
120
710
24
309
155
662
592
253
30
627
54
76
523
104
97
659
321
187
249
497
550
48
929
834
5
978
122
370
127
470
540
667
310
445
705
294
776
883
23
611
244
351
636
384
611
931
145
104
612
379
983
641
441
687
838
934
835
172
10
3
853
161
88
313
797
601
642
271
85
235
225
980
81
449
488
293
164
928
939
291
298
487
276
123
61
874
126
194
388
925
958
26
753
636
269
459
35
360
697
923
713
819
968
37
347
414
493
352
569
807
538
819
217
949
600
975
982
436
360
503
941
316
708
141
245
644
529
221
921
615
443
943
272
698
54
341
711
346
73
847
537
785
193
917
505
193
337
231
124
868
553
56
814
746
656
62
594
78
870
164
719
640
870
58
556
255
475
348
999
718
695
159
705
180
781
341
594
445
560
58
482
506
547
723
435
424
637
267
461
437
308
384
662
789
955
77
650
59
566
901
568
535
545
149
718
655
246
260
430
417
125
673
196
825
215
988
519
890
978
152
787
674
359
37
465
484
327
925
20
451
711
455
44
858
271
122
953
297
52
528
370
450
845
404
247
833
410
813
875
155
137
158
281
103
935
890
433
675
203
462
778
692
247
445
184
839
26
50
357
781
597
107
465
10
378
565
932
50
17
836
252
699
323
234
326
439
160
251
691
34
7
969
731
631
416
209
169
67
139
761
832
512
613
670
888
249
931
385
267
21
379
281
507
297
89
635
576
590
101
459
680
34
511
949
121
11
642
433
651
90
859
585
620
68
876
647
715
752
71
373
338
645
837
134
484
737
648
811
216
412
19
339
151
488
248
865
989
640
3
593
513
266
711
172
869
74
221
763
886
247
496
592
352
175
878
399
274
118
263
238
563
912
246
463
538
890
847
508
921
403
693
92
771
97
779
523
924
885
492
39
730
237
220
425
945
742
558
366
235
234
334
272
237
372
888
235
93
788
470
813
798
959
190
237
950
277
920
778
375
869
643
636
112
446
834
129
825
164
514
471
408
157
58
788
462
770
794
151
288
97
266
415
39
19
945
600
834
194
465
497
199
923
951
366
635
26
58
828
631
318
940
207
278
444
294
498
768
210
853
755
315
215
830
417
492
22
737
97
425
859
656
36
441
199
868
120
586
33
384
160
142
68
65
460
647
46
119
642
25
977
681
969
589
778
708
815
294
508
770
751
147
660
167
280
390
65
802
16
709
453
615
903
651
397
701
704
247
189
202
389
416
533
736
277
612
410
75
63
974
582
790
185
407
683
181
816
37
493
298
20
661
801
996
238
84
349
562
331
236
24
191
561
383
849
66
470
634
246
737
93
858
160
846
825
615
410
844
151
71
673
998
86
867
216
23
170
272
262
907
974
244
87
705
258
674
153
63
378
987
972
183
550
465
822
505
538
345
564
732
684
919
85
483
841
44
816
871
110
781
54
382
782
516
977
361
68
104
176
294
44
796
652
173
705
382
513
59
564
80
392
240
772
497
247
549
452
2
619
909
503
38
243
342
37
464
619
55
964
402
544
580
835
998
83
454
813
435
158
771
343
879
355
543
460
958
694
582
938
10
127
189
723
83
351
947
247
633
417
612
391
232
677
474
635
957
399
589
546
965
830
538
95
408
556
453
358
636
868
571
473
710
23
770
130
347
542
488
928
710
478
351
550
667
337
831
862
830
572
759
51
175
312
899
911
474
120
405
920
947
603
202
501
736
698
130
735
465
88
438
362
406
510
798
244
320
232
335
489
698
561
971
766
726
106
394
437
570
865
595
2
595
728
999
617
857
611
529
374
519
739
955
19
678
965
520
685
86
403
399
967
812
824
958
620
202
356
877
142
210
889
401
474
551
288
550
967
22
91
467
263
611
231
33
272
167
36
874
518
493
508
185
442
525
155
264
537
883
49
754
675
264
5
295
568
705
848
163
45
449
140
310
310
799
600
214
695
314
115
989
460
624
423
476
835
400
696
114
458
825
239
515
210
381
953
145
275
810
269
847
509
143
558
871
533
34
885
31
994
743
717
168
846
61
378
605
166
517
64
266
99
13
853
767
780
384
778
712
216
559
757
719
554
343
306
67
248
208
167
266
17
550
417
970
448
539
470
389
901
980
445
926
394
293
539
608
31
291
708
304
381
458
464
760
825
471
867
478
458
857
324
359
457
406
229
112
923
926
72
835
219
195
51
106
487
219
289
186
874
559
765
266
249
322
129
519
91
598
543
17
129
165
699
178
459
65
948
393
873
256
46
749
202
29
997
238
519
11
21
74
239
232
530
74
984
683
886
976
527
883
26
118
303
873
259
28
326
599
925
106
697
417
284
8
982
289
777
991
249
943
735
916
895
998
315
434
465
253
169
683
356
189
163
815
491
572
427
512
144
396
844
434
949
530
784
277
104
504
764
640
289
60
315
795
155
297
600
769
202
78
154
428
516
50
41
970
337
294
233
270
685
462
241
983
478
447
993
892
752
644
124
336
846
221
235
876
982
191
43
416
790
368
810
317
927
679
822
753
363
956
543
88
283
572
685
436
749
102
201
350
52
26
386
396
23
7
332
219
651
312
943
656
439
419
172
893
447
309
272
860
269
240
396
357
845
750
780
987
629
77
364
418
28
333
390
909
422
648
431
447
814
51
851
689
678
430
992
66
285
123
556
668
771
563
393
898
936
592
290
908
847
515
725
210
350
470
734
176
631
972
423
215
181
535
854
969
669
453
224
413
112
574
282
702
787
965
584
675
867
353
478
323
4
849
222
151
180
459
118
774
759
541
895
283
964
316
260
832
110
767
794
539
822
228
697
973
598
900
692
646
753
943
171
793
670
444
674
522
918
776
879
856
790
715
895
877
810
231
503
402
16
567
838
69
700
492
547
351
462
593
898
116
807
419
96
703
413
209
598
855
331
238
106
910
559
90
715
423
587
676
932
334
821
463
225
252
315
813
101
440
16
637
109
443
743
473
508
479
959
258
619
784
780
270
131
722
942
287
144
87
861
608
784
179
262
303
478
734
247
688
261
55
594
173
699
596
153
323
568
38
75
202
624
335
317
276
787
217
906
90
192
374
884
142
645
150
81
219
794
95
386
851
603
373
748
124
299
807
218
575
392
388
92
133
991
964
372
989
742
410
101
459
325
638
301
516
244
992
382
144
892
429
602
348
991
560
67
313
268
770
611
11
14
598
583
895
297
171
4
949
758
705
920
729
316
956
136
651
307
816
905
728
153
325
449
988
652
981
689
417
947
690
552
721
79
458
439
225
131
308
5
653
335
287
10
60
434
396
895
55
649
691
957
951
503
544
282
744
551
158
579
103
474
476
768
776
418
480
797
792
36
471
802
670
221
908
425
578
512
822
434
804
240
670
396
322
429
595
599
582
894
792
805
353
26
797
474
316
609
678
56
925
363
608
780
124
293
776
888
17
639
735
683
85
89
184
371
177
913
832
751
188
158
773
900
585
787
383
166
700
226
282
202
348
205
550
765
804
418
445
834
264
533
91
783
402
788
883
838
761
503
127
674
669
356
486
420
468
365
724
104
277
784
648
388
145
124
240
941
741
133
178
261
118
172
484
995
73
108
469
728
592
454
383
199
197
925
469
448
275
374
955
37
335
646
35
278
193
357
314
138
222
952
424
571
713
299
576
683
446
984
368
47
769
762
627
753
417
919
645
958
738
976
377
645
300
598
988
830
760
915
533
939
847
648
271
755
903
759
291
59
386
231
631
148
247
844
186
60
911
675
970
249
550
864
534
265
525
447
180
579
468
890
714
116
769
720
707
494
615
986
789
205
486
268
259
329
871
427
451
185
234
829
636
952
814
388
53
680
776
236
785
920
996
853
763
309
891
662
669
203
789
866
702
697
698
160
778
381
198
407
673
218
824
144
846
30
992
330
719
342
172
290
255
661
9
298
346
704
518
725
319
266
159
490
175
151
974
262
143
118
935
988
444
577
599
454
700
537
744
451
700
904
508
997
691
198
702
193
686
193
764
411
923
557
3
653
433
486
146
717
988
660
114
552
557
217
291
756
213
113
466
585
900
49
72
745
724
565
294
297
65
966
174
983
481
564
534
507
678
531
588
143
659
623
515
431
878
171
399
701
761
722
544
847
276
244
619
966
869
457
37
500
192
446
878
319
975
492
105
421
951
384
424
188
635
749
931
278
508
7
121
171
187
474
253
344
84
2
212
858
681
985
609
299
28
862
309
990
599
269
965
658
119
323
524
946
141
820
783
104
171
92
619
725
353
723
465
578
907
161
802
275
180
33
44
367
849
194
929
348
690
666
236
625
844
405
971
589
38
517
338
524
554
355
617
775
475
220
49
872
701
457
149
881
914
896
165
681
381
478
108
918
781
376
573
166
239
475
458
94
645
869
155
856
495
536
703
314
181
539
783
476
995
635
685
543
179
457
878
690
624
979
494
278
131
916
768
533
543
442
743
403
290
43
971
448
423
48
340
841
687
69
935
445
188
176
479
247
888
257
845
305
972
423
924
709
230
369
665
484
802
132
307
697
605
653
765
608
431
117
365
104
25
922
348
902
840
949
991
402
941
568
41
553
551
817
773
910
101
604
758
690
259
458
522
907
198
175
971
79
505
959
73
802
187
288
598
994
201
490
518
88
180
241
532
694
382
485
810
24
94
169
7
281
83
747
714
70
509
779
214
692
569
192
93
262
276
11
207
55
617
555
908
174
904
614
387
310
684
481
669
201
119
246
583
405
176
64
442
244
680
480
772
948
787
527
370
909
967
945
731
847
846
109
32
977
543
548
701
431
131
57
79
221
643
623
483
834
563
253
402
436
662
43
278
374
426
5
641
304
757
496
709
605
152
755
417
117
265
53
270
479
98
128
408
925
659
425
66
630
842
111
151
939
133
741
901
14
667
383
394
624
430
267
847
406
597
31
275
594
403
455
474
848
97
882
162
743
685
83
227
426
131
545
701
516
467
905
653
140
493
18
752
467
811
464
958
125
505
69
153
92
515
125
77
21
166
9
280
320
271
100
517
819
415
969
484
893
873
825
771
839
255
76
502
55
681
850
696
227
547
795
93
867
671
511
69
23
149
365
786
317
183
769
722
170
617
751
483
92
893
105
556
86
260
916
195
2
510
114
53
635
459
265
318
128
472
5
20
662
235
525
506
120
690
774
816
122
140
4
745
208
65
306
443
149
703
879
882
657
412
383
892
852
276
610
714
531
980
957
209
350
791
696
391
108
792
555
372
856
330
244
145
47
714
867
550
989
470
643
425
354
393
529
984
118
407
858
495
638
920
888
191
880
570
260
733
271
174
914
245
42
26
825
196
388
661
917
354
761
554
99
111
859
761
989
732
967
946
156
579
589
979
585
204
114
83
523
534
238
634
340
62
392
282
837
827
921
605
568
197
955
46
632
20
124
121
662
524
194
582
769
23
160
223
380
47
542
481
193
94
160
649
520
47
26
514
127
131
642
473
706
8
703
372
489
370
874
660
869
742
490
54
600
809
298
133
452
789
588
326
814
507
394
60
312
373
272
949
76
358
894
579
725
507
382
173
643
386
991
972
138
342
940
179
409
729
561
121
89
745
140
416
495
663
715
588
796
467
566
451
68
734
135
782
121
181
749
440
793
504
92
542
459
488
275
242
489
530
630
859
539
759
272
715
954
619
909
743
938
622
565
28
719
496
230
988
121
859
760
972
477
31
254
966
214
865
531
824
32
665
130
874
147
656
488
46
228
647
477
792
172
925
876
179
511
212
754
922
285
943
877
120
342
469
877
539
887
894
900
159
156
595
708
277
999
256
174
450
529
8
562
811
906
389
248
631
118
251
33
604
426
311
702
531
95
715
313
991
237
477
64
513
817
151
217
103
143
274
566
599
269
489
690
862
983
668
379
366
509
985
252
338
986
386
977
469
662
857
391
15
546
265
650
579
20
797
242
661
779
919
807
322
117
108
683
565
46
812
696
745
479
356
423
118
104
519
362
328
290
902
280
685
245
987
535
447
391
558
524
700
853
519
113
555
577
547
244
672
368
532
237
703
528
415
812
21
714
743
779
180
862
962
823
728
945
210
786
109
295
486
985
597
815
49
220
406
171
714
399
905
972
500
569
114
877
2
523
234
4
33
154
182
21
495
115
59
877
685
364
86
253
414
365
824
712
565
813
456
631
295
274
830
97
107
943
227
923
75
400
416
623
230
922
791
181
766
229
209
402
107
411
841
469
529
327
189
268
75
475
488
714
869
727
768
32
88
445
844
396
114
996
242
181
934
566
581
378
62
978
626
837
6
3
436
895
755
653
989
467
961
463
154
58
737
216
489
393
726
966
709
26
563
756
886
912
192
613
122
31
894
709
725
349
942
608
452
939
861
957
267
639
491
741
659
346
31
385
562
612
401
99
170
736
784
83
823
783
704
8
31
712
124
228
194
846
427
106
455
411
573
133
877
311
774
14
422
273
644
988
68
17
83
796
470
605
647
794
600
790
916
906
396
235
643
127
494
643
222
687
714
433
666
846
446
2
663
380
140
324
620
874
620
507
918
563
926
538
968
427
292
392
234
91
717
530
733
179
803
369
211
636
555
67
804
600
521
819
608
743
715
400
484
893
719
942
672
682
276
784
147
997
49
850
763
886
677
982
278
650
340
537
703
626
254
142
774
987
703
179
938
97
841
137
366
744
602
945
535
387
383
268
689
53
23
777
572
246
746
159
52
717
770
582
149
343
465
546
590
440
447
724
51
440
898
440
714
246
903
810
899
464
721
46
130
610
221
591
157
26
68
592
782
712
666
519
106
38
328
679
54
751
763
236
905
469
475
180
863
528
972
123
80
501
166
101
138
654
430
571
620
788
527
965
223
834
469
678
344
625
409
584
192
911
684
282
73
615
912
137
717
157
201
179
775
896
990
233
66
864
262
898
765
519
621
472
807
170
264
983
666
565
858
744
340
572
121
392
298
275
462
296
914
612
609
980
517
734
955
213
181
792
443
927
858
212
486
818
829
376
292
800
792
824
490
665
780
18
582
31
494
715
857
850
781
510
706
947
330
742
286
239
721
160
259
486
350
310
428
702
370
175
93
105
457
779
275
485
91
934
954
712
433
60
478
379
133
90
165
678
484
844
932
112
302
501
300
440
90
614
390
819
583
373
67
393
573
913
32
136
106
627
97
525
47
894
953
265
208
157
351
994
67
268
353
424
421
744
369
474
588
683
512
815
710
252
254
95
717
85
731
568
34
650
165
592
292
165
454
212
234
967
300
332
801
290
452
55
989
277
849
475
534
539
514
582
5
499
965
784
546
777
624
687
578
925
712
891
61
692
586
642
534
550
157
177
34
672
662
794
607
232
969
698
484
623
496
857
440
200
86
831
329
207
73
565
693
579
104
833
551
912
221
933
65
72
648
672
423
129
371
81
931
5
809
157
191
13
819
897
257
768
317
992
861
722
89
963
817
36
229
814
332
984
160
427
824
188
60
546
404
525
831
355
908
168
453
326
416
755
397
601
962
892
155
659
964
238
878
173
708
561
939
144
735
540
279
766
78
478
900
312
826
405
917
841
31
274
22
449
158
932
148
473
803
764
460
123
51
720
198
295
67
297
633
710
719
534
851
431
858
97
132
978
225
50
656
298
687
82
595
290
122
37
934
257
219
824
594
992
609
357
222
906
906
171
825
491
893
18
341
665
678
971
916
77
910
567
842
787
934
608
117
518
150
18
923
441
611
881
937
141
801
714
263
643
375
345
474
269
488
227
140
8
56
309
350
899
310
240
121
811
292
262
553
830
419
640
637
811
600
419
951
729
157
135
684
178
895
136
626
113
925
620
320
889
581
307
82
9
437
248
947
133
760
423
4
317
796
228
80
436
457
8
306
239
101
848
69
10
803
553
648
888
713
800
143
862
932
363
713
705
378
591
172
986
81
971
820
820
891
824
547
18
979
659
846
206
744
515
250
144
889
828
900
422
856
324
599
121
908
297
364
969
768
720
688
9
451
483
104
263
866
160
981
48
417
951
939
324
364
712
55
91
805
617
593
21
175
809
378
740
912
692
653
14
777
899
697
981
782
917
829
458
144
119
57
192
521
728
705
923
267
881
741
445
7
722
576
437
130
607
544
969
147
890
939
720
243
144
161
699
173
289
188
918
900
329
536
528
396
561
433
397
197
496
720
980
155
119
899
877
732
353
968
805
428
955
624
207
54
828
156
95
116
360
813
527
379
844
734
127
467
100
129
415
921
150
615
530
215
416
328
422
525
180
812
467
409
698
207
771
119
996
383
835
822
978
645
331
606
240
656
688
608
428
640
596
159
164
435
807
444
920
815
880
625
958
140
114
77
805
159
366
532
348
922
905
940
202
461
155
52
517
382
983
260
954
138
291
938
814
599
9
80
513
653
382
366
43
841
317
297
794
344
979
851
212
378
375
149
147
923
861
730
344
490
452
282
870
350
812
521
19
686
85
652
65
755
398
525
940
466
598
639
802
459
548
164
117
162
561
457
999
855
881
458
639
970
967
287
427
947
983
654
84
914
427
596
997
142
458
814
560
878
486
545
65
882
845
204
51
600
975
173
587
376
671
319
271
66
992
998
768
265
846
638
673
704
583
951
864
307
888
890
578
74
79
517
156
755
713
685
78
100
706
544
493
203
564
646
884
803
505
200
589
703
486
511
445
261
623
87
175
231
135
982
606
273
934
941
32
26
447
432
698
425
847
641
812
901
736
811
151
417
901
386
891
531
743
68
429
605
857
409
209
10
932
672
64
730
528
171
684
505
677
111
936
96
314
518
61
62
755
828
952
280
692
139
11
732
494
821
948
985
195
301
30
6
74
585
193
812
820
370
511
157
22
433
540
638
788
819
293
90
724
178
931
313
424
475
66
510
598
644
207
241
70
373
596
921
367
237
197
426
418
732
300
912
474
819
551
531
70
846
973
450
476
254
992
594
348
354
287
376
969
649
508
858
947
782
788
227
314
254
922
728
893
94
776
33
122
997
214
744
159
684
370
905
317
534
890
605
590
644
155
410
594
999
913
376
475
361
717
390
345
426
784
638
867
50
860
969
305
106
817
974
124
63
227
953
376
523
540
927
434
447
546
534
681
966
409
441
470
386
349
96
567
942
200
620
996
187
872
91
376
828
993
254
140
36
640
869
326
81
484
835
997
365
199
810
712
898
885
979
285
550
899
35
53
847
985
418
212
505
976
51
247
269
224
326
327
636
763
185
360
563
212
710
820
239
367
774
465
261
389
103
537
314
967
207
354
845
627
737
157
781
123
130
359
815
71
118
14
248
972
770
398
853
56
414
24
971
801
739
583
576
178
255
590
316
80
337
91
205
477
807
398
756
630
751
123
278
242
240
686
784
756
191
567
85
277
131
566
100
185
955
507
369
400
361
364
17
711
882
388
718
849
658
64
387
268
47
340
75
499
52
812
328
83
738
936
48
314
829
387
758
600
506
146
937
907
334
940
282
263
605
421
971
935
782
440
20
878
632
767
931
403
998
721
332
847
863
199
241
943
451
593
631
725
251
168
101
861
468
813
888
665
302
697
569
84
692
285
324
201
914
118
371
922
958
129
689
851
852
197
696
824
801
69
378
33
379
354
565
253
372
61
945
974
598
560
788
117
709
994
739
518
188
903
216
46
760
54
88
537
183
183
499
288
404
135
478
92
181
179
41
333
725
834
742
753
181
648
657
505
927
94
999
886
45
901
86
409
599
8
910
534
476
393
27
987
452
545
731
677
583
304
438
393
258
378
652
862
214
465
207
508
964
781
32
881
885
950
935
10
157
51
887
208
427
21
256
21
850
666
638
525
881
537
860
848
469
405
220
211
765
553
478
926
780
137
783
207
637
245
250
149
826
802
751
671
900
654
953
364
66
664
445
524
129
434
745
622
900
443
534
125
352
862
301
176
551
204
568
588
61
924
226
986
29
836
707
48
282
74
768
677
433
382
819
749
575
750
45
560
459
967
713
133
146
50
909
265
116
670
629
57
684
719
81
124
875
107
50
48
615
265
433
812
247
838
576
872
604
322
524
653
383
372
805
86
693
274
415
233
58
556
570
511
169
991
750
523
984
592
528
851
371
660
718
85
937
513
227
548
840
148
332
233
503
771
768
754
524
183
296
301
596
903
30
192
115
298
566
979
133
712
756
969
687
983
478
48
494
857
355
363
664
683
346
765
893
192
988
771
66
877
738
47
962
610
726
791
293
417
558
285
266
59
412
169
830
165
543
71
843
72
507
509
601
699
216
623
457
310
884
248
127
841
405
304
500
177
70
666
23
775
933
956
563
469
879
541
612
598
403
474
455
457
304
539
106
288
342
939
960
94
852
268
139
245
572
225
131
84
692
313
285
855
851
925
241
867
740
46
703
44
890
576
58
533
236
504
825
721
768
186
688
230
955
595
496
241
965
21
734
181
400
197
340
579
393
186
225
606
203
753
282
801
519
851
26
796
459
744
944
598
882
810
630
188
635
440
74
833
146
669
353
765
645
287
447
418
771
615
960
45
636
461
404
614
816
334
183
163
160
600
415
799
662
552
706
232
403
678
200
74
10
583
741
488
779
109
859
59
868
380
544
165
253
831
850
473
180
930
55
187
565
348
671
28
793
867
695
884
82
181
266
291
337
791
803
556
178
397
662
732
842
662
289
122
21
392
484
822
526
357
919
688
212
92
823
500
269
838
986
298
814
132
780
608
182
459
809
254
36
877
351
300
561
149
175
814
353
991
911
343
60
648
115
650
94
718
255
328
914
130
351
339
601
606
569
586
386
962
771
336
629
285
464
986
3
940
336
539
218
810
531
594
311
165
545
302
682
126
409
585
993
942
563
162
510
513
342
483
518
945
830
484
63
97
880
434
823
904
670
839
450
366
485
74
941
189
398
106
938
162
36
553
594
806
701
91
345
864
473
539
32
155
289
957
354
416
986
100
296
621
426
738
188
488
929
30
549
336
825
584
216
817
276
894
155
521
674
80
494
130
135
76
17
218
498
480
182
304
227
305
866
960
886
21
305
448
785
24
846
569
797
16
977
445
546
135
438
436
364
179
12
348
853
352
723
387
461
11
819
943
155
569
780
424
130
589
28
612
928
103
451
145
966
501
121
349
961
856
835
864
797
509
194
129
619
147
848
871
793
284
549
757
714
920
179
721
370
694
835
519
882
311
181
406
412
251
972
471
347
909
966
414
364
61
472
410
622
839
151
251
205
924
250
94
11
363
669
783
299
729
198
480
931
264
133
783
961
794
704
23
886
121
146
593
524
194
272
688
179
162
274
597
911
113
742
71
32
184
44
628
246
808
587
709
983
835
121
119
806
541
93
992
588
96
247
394
726
456
746
331
255
944
997
852
657
860
259
823
34
517
56
778
201
29
176
244
454
598
131
520
256
261
107
672
980
970
524
936
91
231
101
81
971
130
849
415
476
920
624
912
695
260
467
803
742
363
831
544
510
469
722
982
112
481
438
707
720
372
784
749
518
476
326
293
531
665
962
28
896
242
480
560
254
777
85
912
889
901
454
943
381
649
889
991
66
232
832
54
663
777
478
644
144
309
681
174
567
915
531
946
355
234
123
354
775
310
351
734
164
778
356
656
587
696
155
844
846
632
782
224
553
738
532
130
757
978
158
349
121
632
554
370
384
915
344
884
134
52
947
830
926
902
913
830
699
410
739
773
557
149
699
840
732
568
712
88
9
5
741
354
254
723
423
898
507
130
849
181
134
533
39
551
281
599
515
235
607
167
16
862
762
834
344
226
906
744
262
559
501
842
144
954
488
255
438
244
87
520
981
100
732
443
538
400
646
694
473
201
470
546
763
944
234
874
300
88
567
379
772
307
51
482
462
740
138
6
868
743
914
122
131
867
441
794
44
267
784
168
545
773
22
549
831
72
355
792
499
851
202
520
384
345
705
747
139
639
379
695
923
40
647
28
653
266
263
991
565
441
762
785
231
570
183
286
587
422
920
347
524
418
572
236
951
185
189
779
822
49
401
37
754
260
826
84
11
952
845
472
302
691
126
335
931
424
419
223
39
730
22
167
366
851
550
746
969
19
37
951
858
334
514
54
411
265
710
649
512
953
723
580
280
599
957
557
153
388
385
111
575
326
970
329
172
306
723
276
221
346
219
896
833
168
251
677
271
349
926
617
240
246
458
14
531
310
569
539
183
502
755
980
699
929
248
393
807
237
690
316
311
335
673
683
563
262
679
167
558
397
70
465
253
939
367
886
241
568
269
621
220
226
557
904
517
550
890
652
430
179
274
965
250
805
867
754
644
882
826
812
975
363
491
83
176
615
589
906
887
266
957
45
917
49
145
434
296
769
657
368
377
240
112
350
596
723
243
497
595
250
562
622
155
806
890
511
259
631
173
524
223
717
977
898
403
629
300
995
507
58
847
294
458
991
935
696
23
34
828
45
140
543
951
963
858
388
858
670
389
707
344
189
774
753
559
557
367
263
528
957
249
982
133
934
248
680
519
656
377
454
490
16
795
620
955
37
943
227
666
61
63
404
982
167
13
707
952
754
514
755
162
201
806
324
921
701
509
321
744
949
396
523
16
38
226
373
601
26
573
723
568
431
804
302
867
80
853
134
731
961
601
265
133
540
850
219
375
970
900
595
751
369
850
603
874
481
405
304
990
798
503
935
242
150
733
883
557
967
622
329
898
600
951
557
359
859
824
889
195
436
697
141
602
85
523
950
991
47
621
108
383
443
870
648
480
239
503
482
684
270
302
869
517
781
363
711
931
264
488
205
9
537
835
969
984
508
932
618
162
197
514
5
60
156
80
919
706
117
162
911
340
791
109
544
75
276
568
361
278
245
149
372
693
46
724
590
661
422
727
346
557
34
393
764
586
794
441
572
258
263
950
687
580
155
715
881
457
33
132
481
788
60
725
943
615
737
343
657
423
836
275
756
963
238
455
251
233
12
134
111
91
241
274
61
756
939
208
942
728
190
503
23
744
90
7
120
948
5
661
51
670
84
922
431
994
692
796
22
184
631
324
226
44
300
347
102
579
648
611
337
755
112
442
46
388
288
398
89
245
702
423
170
633
108
582
103
24
320
725
817
641
437
190
597
43
248
511
912
74
774
197
384
330
572
290
434
4
310
342
220
947
113
127
820
713
161
445
542
774
941
396
832
277
102
451
318
534
149
306
994
393
489
461
85
820
381
988
704
34
410
805
649
152
751
87
697
831
968
554
974
284
181
916
650
488
741
653
391
664
172
464
193
712
501
997
332
805
114
510
500
956
814
70
281
780
723
637
342
843
661
395
138
682
517
549
770
503
676
926
501
677
388
42
518
594
857
499
74
78
261
616
99
284
183
176
158
767
965
944
653
569
357
13
233
62
531
258
159
897
276
391
556
731
250
775
876
616
642
758
902
831
644
376
31
599
437
844
801
74
679
97
212
475
661
568
35
942
337
449
536
924
208
777
501
438
167
96
343
255
279
323
789
549
853
319
458
612
416
276
883
930
760
160
922
39
96
787
859
294
414
243
868
501
119
64
246
698
238
819
238
537
209
482
379
518
264
567
33
895
795
456
64
274
747
381
169
371
975
898
888
888
504
698
282
667
965
789
707
787
403
888
744
684
747
259
986
859
824
723
739
757
369
218
127
36
216
983
131
555
246
801
23
9
259
680
815
501
867
840
533
377
201
84
554
952
392
345
388
438
494
842
821
760
732
857
84
382
302
277
485
302
487
432
678
528
154
925
303
377
317
706
604
827
830
561
136
739
766
865
902
398
321
553
515
737
889
436
450
443
343
146
983
40
203
409
151
699
477
350
348
768
980
126
378
421
760
198
38
98
600
197
158
650
813
144
166
558
20
46
606
538
505
130
951
337
869
473
739
351
599
484
90
817
412
698
79
914
855
3
958
142
753
29
551
628
759
63
18
514
490
14
280
196
710
950
198
234
477
402
804
707
423
544
960
282
324
752
794
354
309
14
769
846
894
256
400
264
883
293
546
638
215
830
246
215
461
442
294
817
524
626
488
917
124
122
508
400
901
324
920
165
119
218
122
281
539
324
296
395
130
857
190
569
994
863
332
485
169
521
528
882
871
359
43
704
833
945
385
413
13
536
509
883
699
774
224
926
241
625
243
877
714
340
270
248
383
259
530
429
960
339
231
889
190
464
804
976
46
106
43
958
758
220
182
815
273
440
253
92
687
253
835
806
313
693
795
256
714
342
430
913
209
280
345
291
927
451
987
93
610
954
958
336
153
54
274
268
839
113
199
47
937
191
710
415
542
161
598
299
727
116
209
210
967
41
915
508
295
622
710
440
877
112
556
756
235
580
141
920
994
871
388
262
986
703
615
887
277
357
995
267
727
375
818
996
806
160
125
896
48
904
213
98
436
428
402
592
738
106
853
77
614
570
580
965
412
667
466
758
758
847
557
970
2
561
651
416
809
10
730
767
776
508
927
210
986
192
476
602
472
111
711
290
439
263
958
780
482
371
144
986
392
601
300
750
718
198
429
540
209
146
857
641
937
421
972
959
478
46
539
601
932
477
74
922
381
647
630
604
528
739
884
816
981
604
818
506
791
705
308
711
261
732
880
657
593
994
553
682
249
291
161
922
417
517
978
560
83
268
867
695
400
348
681
193
137
146
440
512
960
974
322
708
415
213
899
878
767
84
552
173
10
606
835
310
935
502
989
836
790
358
296
984
550
139
256
2
754
745
99
772
177
208
598
600
362
474
804
374
117
242
522
755
732
278
714
556
524
300
734
145
56
888
18
168
405
917
257
73
111
569
252
687
611
997
312
447
522
494
455
587
768
216
200
635
302
550
669
406
534
267
555
985
531
218
121
958
797
221
724
905
97
251
479
891
25
734
39
688
886
124
348
4
928
436
482
384
435
833
333
287
100
821
205
957
382
366
488
750
720
398
200
253
392
608
518
422
231
680
177
628
275
447
879
308
623
546
832
159
372
526
264
675
254
397
99
459
437
13
467
829
148
564
321
76
44
370
689
326
749
574
857
269
69
878
62
961
389
758
145
499
977
678
930
58
436
118
380
367
113
866
784
924
404
820
964
517
652
73
996
397
804
149
798
509
502
255
421
8
604
326
661
137
373
792
118
650
615
32
467
319
733
988
612
329
506
563
764
478
350
345
829
759
880
724
154
404
761
221
436
555
56
508
320
520
753
762
478
686
501
267
716
105
311
722
93
583
94
688
962
621
147
802
474
462
358
300
928
526
346
395
503
911
809
190
18
44
466
490
560
875
780
978
893
715
60
927
368
79
780
207
574
10
798
689
388
590
830
331
333
50
247
842
662
327
834
152
365
717
834
364
553
918
623
944
106
742
206
771
718
574
681
100
749
553
169
204
974
674
459
878
593
95
335
345
182
602
345
181
334
620
410
251
63
54
846
729
211
122
154
341
887
487
384
740
667
277
980
687
889
156
918
84
196
468
207
454
345
55
845
628
711
934
253
739
427
870
624
30
763
710
771
944
121
389
451
936
323
84
405
638
186
52
645
920
996
98
802
313
613
516
13
812
732
713
648
350
702
997
115
702
273
690
962
806
786
947
674
257
426
98
208
801
584
41
276
872
194
941
806
753
52
29
579
233
784
926
204
168
202
738
876
952
437
537
491
130
996
352
164
630
852
11
126
440
815
324
153
250
559
638
262
616
450
693
689
827
576
774
932
107
835
264
372
990
77
761
670
903
936
108
681
884
26
437
791
491
58
276
748
243
5
153
644
851
282
966
633
348
51
155
968
294
872
847
695
251
328
361
923
300
467
101
546
134
414
166
911
791
402
249
816
170
318
149
980
903
964
364
375
893
587
557
820
327
156
619
121
620
280
378
627
678
162
520
812
508
974
640
810
469
140
621
978
89
208
562
629
221
303
875
74
245
497
351
589
834
605
287
186
69
988
917
776
349
683
299
801
385
609
887
221
878
261
393
102
39
480
359
935
495
906
348
781
814
298
164
348
717
863
839
981
859
668
184
325
760
778
740
623
659
494
300
487
341
978
826
390
761
28
856
763
440
112
559
352
250
116
308
230
645
738
347
933
294
758
857
696
169
276
8
585
726
578
554
867
224
32
282
17
834
982
344
207
472
145
120
65
377
183
533
706
693
282
255
234
567
249
9
726
396
602
266
903
585
745
9
995
943
312
194
350
494
829
949
693
904
989
130
930
922
649
615
269
72
197
444
454
884
905
567
802
652
57
752
764
95
725
459
236
951
577
734
654
668
431
47
925
391
937
742
807
211
604
97
561
217
954
910
772
789
871
326
290
112
384
981
133
112
212
820
666
736
442
210
153
180
980
341
264
415
907
420
562
486
66
932
59
409
727
688
17
284
245
641
128
371
608
815
614
635
229
780
676
151
578
44
927
277
720
943
665
323
823
563
966
509
140
789
908
607
76
697
95
833
463
180
149
936
546
172
183
399
424
486
906
404
904
117
757
192
754
426
93
321
637
674
756
782
900
318
186
443
428
924
434
226
267
915
446
719
137
297
932
810
896
21
708
970
43
725
706
339
926
301
201
327
603
694
963
186
40
864
623
593
788
544
87
856
718
237
703
755
805
485
22
655
219
335
29
657
966
283
892
830
517
631
287
88
644
978
927
44
250
266
938
854
300
542
705
284
140
467
981
97
799
58
715
858
693
900
254
285
389
600
257
765
878
399
399
756
406
242
976
295
891
863
399
273
741
772
584
541
991
409
278
741
529
711
416
209
963
41
479
940
478
740
609
187
890
814
799
861
367
185
916
155
565
557
104
379
118
667
183
373
770
817
848
444
937
320
639
516
36
444
179
741
84
942
914
491
511
793
303
78
726
688
213
742
289
181
507
205
874
232
701
24
186
568
428
61
675
871
551
632
848
667
320
567
89
227
944
573
182
221
363
273
207
777
126
28
176
115
96
107
828
257
229
782
666
638
925
837
134
795
765
290
220
450
544
113
417
536
890
308
25
277
70
693
718
721
496
142
146
981
116
923
215
120
120
950
59
779
815
803
851
437
744
895
549
709
511
478
797
532
947
821
622
460
509
903
937
65
507
352
719
125
201
287
610
14
927
544
515
239
24
421
33
700
413
774
571
778
485
423
339
360
768
369
437
348
446
937
881
35
605
298
971
899
766
583
838
878
415
35
981
465
317
358
924
75
992
611
647
967
375
465
366
638
89
714
514
135
648
396
366
386
647
121
612
939
387
845
782
636
758
129
794
817
896
684
314
438
800
5
935
470
106
20
385
559
216
847
74
188
189
861
176
407
924
533
134
908
686
88
845
175
3
33
829
370
240
162
173
493
131
517
702
496
495
254
169
790
955
265
920
634
85
139
824
816
823
44
43
129
748
226
576
490
935
292
220
506
307
86
601
916
805
282
953
667
919
10
742
33
620
680
607
579
205
412
666
197
19
541
348
214
861
828
435
340
348
626
17
340
659
926
901
961
761
649
48
142
281
420
805
578
826
842
204
488
403
537
128
251
418
534
782
183
44
471
482
485
721
95
916
322
420
928
418
848
992
851
516
70
2
147
974
420
597
623
169
973
942
370
730
820
731
837
908
66
825
893
762
846
937
410
466
519
440
623
931
833
463
